home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_libtool.idb / usr / freeware / share / libtool / ltconfig.z / ltconfig
Encoding:
Text File  |  1999-07-16  |  90.3 KB  |  2,968 lines

  1. #! /bin/sh
  2.  
  3. # ltconfig - Create a system-specific libtool.
  4. # Copyright (C) 1996-1999 Free Software Foundation, Inc.
  5. # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
  6. #
  7. # This file is free software; you can redistribute it and/or modify it
  8. # under the terms of the GNU General Public License as published by
  9. # the Free Software Foundation; either version 2 of the License, or
  10. # (at your option) any later version.
  11. #
  12. # This program is distributed in the hope that it will be useful, but
  13. # WITHOUT ANY WARRANTY; without even the implied warranty of
  14. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  15. # General Public License for more details.
  16. #
  17. # You should have received a copy of the GNU General Public License
  18. # along with this program; if not, write to the Free Software
  19. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  20. #
  21. # As a special exception to the GNU General Public License, if you
  22. # distribute this file as part of a program that contains a
  23. # configuration script generated by Autoconf, you may include it under
  24. # the same distribution terms that you use for the rest of that program.
  25.  
  26. # A lot of this script is taken from autoconf-2.10.
  27.  
  28. # Check that we are running under the correct shell.
  29. SHELL=${CONFIG_SHELL-/bin/sh}
  30. echo=echo
  31. if test "X$1" = X--no-reexec; then
  32.   # Discard the --no-reexec flag, and continue.
  33.   shift
  34. elif test "X$1" = X--fallback-echo; then
  35.   # Avoid inline document here, it may be left over
  36.   :
  37. elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
  38.   # Yippee, $echo works!
  39.   :
  40. else
  41.   # Restart under the correct shell.
  42.   exec "$SHELL" "$0" --no-reexec ${1+"$@"}
  43. fi
  44.  
  45. if test "X$1" = X--fallback-echo; then
  46.   # used as fallback echo
  47.   shift
  48.   cat <<EOF
  49. $*
  50. EOF
  51.   exit 0
  52. fi
  53.  
  54. # Find the correct PATH separator.  Usually this is `:', but
  55. # DJGPP uses `;' like DOS.
  56. if test "X${PATH_SEPARATOR+set}" != "Xset"; then
  57.   UNAME=${UNAME-`uname 2>/dev/null`}
  58.   case X$UNAME in
  59.     *-DOS) PATH_SEPARATOR=';' ;;
  60.     *)     PATH_SEPARATOR=':' ;;
  61.   esac
  62. fi
  63.  
  64. # The HP-UX ksh and POSIX shell print the target directory to stdout
  65. # if CDPATH is set.
  66. if test "${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi
  67.  
  68. if test "X${echo_test_string+set}" != "Xset"; then
  69.   # find a string as large as possible, as long as the shell can cope with it
  70.   for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
  71.     # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
  72.     if (echo_test_string="`eval $cmd`") 2>/dev/null &&
  73.        echo_test_string="`eval $cmd`" &&
  74.        (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null; then
  75.       break
  76.     fi
  77.   done
  78. fi
  79.  
  80. if test "X`($echo '\t') 2>/dev/null`" != 'X\t' ||
  81.    test "X`($echo "$echo_test_string") 2>/dev/null`" != X"$echo_test_string"; then
  82.   # The Solaris, AIX, and Digital Unix default echo programs unquote
  83.   # backslashes.  This makes it impossible to quote backslashes using
  84.   #   echo "$something" | sed 's/\\/\\\\/g'
  85.   #
  86.   # So, first we look for a working echo in the user's PATH.
  87.  
  88.   IFS="${IFS=     }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
  89.   for dir in $PATH /usr/ucb; do
  90.     if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
  91.        test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
  92.        test "X`($dir/echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
  93.       echo="$dir/echo"
  94.       break
  95.     fi
  96.   done
  97.   IFS="$save_ifs"
  98.  
  99.   if test "X$echo" = Xecho; then
  100.     # We didn't find a better echo, so look for alternatives.
  101.     if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
  102.        test "X`(print -r "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
  103.       # This shell has a builtin print -r that does the trick.
  104.       echo='print -r'
  105.     elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
  106.      test "X$CONFIG_SHELL" != X/bin/ksh; then
  107.       # If we have ksh, try running ltconfig again with it.
  108.       ORIGINAL_CONFIG_SHELL="${CONFIG_SHELL-/bin/sh}"
  109.       export ORIGINAL_CONFIG_SHELL
  110.       CONFIG_SHELL=/bin/ksh
  111.       export CONFIG_SHELL
  112.       exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"}
  113.     else
  114.       # Try using printf.
  115.       echo='printf "%s\n"'
  116.       if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
  117.      test "X`($echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
  118.     # Cool, printf works
  119.     :
  120.       elif test "X`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null`" = 'X\t' &&
  121.        test "X`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
  122.     CONFIG_SHELL="$ORIGINAL_CONFIG_SHELL"
  123.     export CONFIG_SHELL
  124.     SHELL="$CONFIG_SHELL"
  125.     export SHELL
  126.     echo="$CONFIG_SHELL $0 --fallback-echo"
  127.       elif test "X`("$CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null`" = 'X\t' &&
  128.        test "X`("$CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null`" = X"$echo_test_string"; then
  129.     echo="$CONFIG_SHELL $0 --fallback-echo"
  130.       else
  131.     # maybe with a smaller string...
  132.     prev=:
  133.  
  134.     for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
  135.       if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null; then
  136.         break
  137.       fi
  138.       prev="$cmd"
  139.     done
  140.  
  141.     if test "$prev" != 'sed 50q "$0"'; then
  142.       echo_test_string=`eval $prev`
  143.       export echo_test_string
  144.       exec "${ORIGINAL_CONFIG_SHELL}" "$0" ${1+"$@"}
  145.     else
  146.       # Oops.  We lost completely, so just stick with echo.
  147.       echo=echo
  148.     fi
  149.       fi
  150.     fi
  151.   fi
  152. fi
  153.  
  154. # Sed substitution that helps us do robust quoting.  It backslashifies
  155. # metacharacters that are still active within double-quoted strings.
  156. Xsed='sed -e s/^X//'
  157. sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
  158.  
  159. # Same as above, but do not quote variable references.
  160. double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
  161.  
  162. # Sed substitution to delay expansion of an escaped shell variable in a
  163. # double_quote_subst'ed string.
  164. delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
  165.  
  166. # The name of this program.
  167. progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'`
  168.  
  169. # Constants:
  170. PROGRAM=ltconfig
  171. PACKAGE=libtool
  172. VERSION=1.3.2
  173. TIMESTAMP=" (1.385.2.150 1999/05/26 00:28:32)"
  174. ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5'
  175. ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5'
  176. rm="rm -f"
  177.  
  178. help="Try \`$progname --help' for more information."
  179.  
  180. # Global variables:
  181. default_ofile=libtool
  182. can_build_shared=yes
  183. enable_shared=yes
  184. # All known linkers require a `.a' archive for static linking.
  185. enable_static=yes
  186. enable_fast_install=yes
  187. enable_dlopen=unknown
  188. enable_win32_dll=no
  189. ltmain=
  190. silent=
  191. srcdir=
  192. ac_config_guess=
  193. ac_config_sub=
  194. host=
  195. nonopt=
  196. ofile="$default_ofile"
  197. verify_host=yes
  198. with_gcc=no
  199. with_gnu_ld=no
  200. need_locks=yes
  201. ac_ext=c
  202. objext=o
  203. libext=a
  204. cache_file=
  205.  
  206. old_AR="$AR"
  207. old_CC="$CC"
  208. old_CFLAGS="$CFLAGS"
  209. old_CPPFLAGS="$CPPFLAGS"
  210. old_LDFLAGS="$LDFLAGS"
  211. old_LD="$LD"
  212. old_LN_S="$LN_S"
  213. old_LIBS="$LIBS"
  214. old_NM="$NM"
  215. old_RANLIB="$RANLIB"
  216. old_DLLTOOL="$DLLTOOL"
  217. old_OBJDUMP="$OBJDUMP"
  218. old_AS="$AS"
  219.  
  220. # Parse the command line options.
  221. args=
  222. prev=
  223. for option
  224. do
  225.   case "$option" in
  226.   -*=*) optarg=`echo "$option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
  227.   *) optarg= ;;
  228.   esac
  229.  
  230.   # If the previous option needs an argument, assign it.
  231.   if test -n "$prev"; then
  232.     eval "$prev=\$option"
  233.     prev=
  234.     continue
  235.   fi
  236.  
  237.   case "$option" in
  238.   --help) cat <<EOM
  239. Usage: $progname [OPTION]... [HOST [LTMAIN]]
  240.  
  241. Generate a system-specific libtool script.
  242.  
  243.     --debug                enable verbose shell tracing
  244.     --disable-shared       do not build shared libraries
  245.     --disable-static       do not build static libraries
  246.     --disable-fast-install do not optimize for fast installation
  247.     --enable-dlopen        enable dlopen support
  248.     --enable-win32-dll     enable building dlls on win32 hosts
  249.     --help                 display this help and exit
  250.     --no-verify            do not verify that HOST is a valid host type
  251. -o, --output=FILE          specify the output file [default=$default_ofile]
  252.     --quiet                same as \`--silent'
  253.     --silent               do not print informational messages
  254.     --srcdir=DIR           find \`config.guess' in DIR
  255.     --version              output version information and exit
  256.     --with-gcc             assume that the GNU C compiler will be used
  257.     --with-gnu-ld          assume that the C compiler uses the GNU linker
  258.     --disable-lock         disable file locking
  259.     --cache-file=FILE      configure cache file
  260.  
  261. LTMAIN is the \`ltmain.sh' shell script fragment or \`ltmain.c' program
  262. that provides basic libtool functionality.
  263.  
  264. HOST is the canonical host system name [default=guessed].
  265. EOM
  266.   exit 0
  267.   ;;
  268.  
  269.   --debug)
  270.     echo "$progname: enabling shell trace mode"
  271.     set -x
  272.     ;;
  273.  
  274.   --disable-shared) enable_shared=no ;;
  275.  
  276.   --disable-static) enable_static=no ;;
  277.  
  278.   --disable-fast-install) enable_fast_install=no ;;
  279.  
  280.   --enable-dlopen) enable_dlopen=yes ;;
  281.  
  282.   --enable-win32-dll) enable_win32_dll=yes ;;
  283.  
  284.   --quiet | --silent) silent=yes ;;
  285.  
  286.   --srcdir) prev=srcdir ;;
  287.   --srcdir=*) srcdir="$optarg" ;;
  288.  
  289.   --no-verify) verify_host=no ;;
  290.  
  291.   --output | -o) prev=ofile ;;
  292.   --output=*) ofile="$optarg" ;;
  293.  
  294.   --version) echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"; exit 0 ;;
  295.  
  296.   --with-gcc) with_gcc=yes ;;
  297.   --with-gnu-ld) with_gnu_ld=yes ;;
  298.  
  299.   --disable-lock) need_locks=no ;;
  300.  
  301.   --cache-file=*) cache_file="$optarg" ;;
  302.  
  303.   -*)
  304.     echo "$progname: unrecognized option \`$option'" 1>&2
  305.     echo "$help" 1>&2
  306.     exit 1
  307.     ;;
  308.  
  309.   *)
  310.     if test -z "$ltmain"; then
  311.       ltmain="$option"
  312.     elif test -z "$host"; then
  313. # This generates an unnecessary warning for sparc-sun-solaris4.1.3_U1
  314. #      if test -n "`echo $option| sed 's/[-a-z0-9.]//g'`"; then
  315. #        echo "$progname: warning \`$option' is not a valid host type" 1>&2
  316. #      fi
  317.       host="$option"
  318.     else
  319.       echo "$progname: too many arguments" 1>&2
  320.       echo "$help" 1>&2
  321.       exit 1
  322.     fi ;;
  323.   esac
  324. done
  325.  
  326. if test -z "$ltmain"; then
  327.   echo "$progname: you must specify a LTMAIN file" 1>&2
  328.   echo "$help" 1>&2
  329.   exit 1
  330. fi
  331.  
  332. if test ! -f "$ltmain"; then
  333.   echo "$progname: \`$ltmain' does not exist" 1>&2
  334.   echo "$help" 1>&2
  335.   exit 1
  336. fi
  337.  
  338. # Quote any args containing shell metacharacters.
  339. ltconfig_args=
  340. for arg
  341. do
  342.   case "$arg" in
  343.   *" "*|*"    "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
  344.   ltconfig_args="$ltconfig_args '$arg'" ;;
  345.   *) ltconfig_args="$ltconfig_args $arg" ;;
  346.   esac
  347. done
  348.  
  349. # A relevant subset of AC_INIT.
  350.  
  351. # File descriptor usage:
  352. # 0 standard input
  353. # 1 file creation
  354. # 2 errors and warnings
  355. # 3 some systems may open it to /dev/tty
  356. # 4 used on the Kubota Titan
  357. # 5 compiler messages saved in config.log
  358. # 6 checking for... messages and results
  359. if test "$silent" = yes; then
  360.   exec 6>/dev/null
  361. else
  362.   exec 6>&1
  363. fi
  364. exec 5>>./config.log
  365.  
  366. # NLS nuisances.
  367. # Only set LANG and LC_ALL to C if already set.
  368. # These must not be set unconditionally because not all systems understand
  369. # e.g. LANG=C (notably SCO).
  370. if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
  371. if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi
  372.  
  373. if test -n "$cache_file" && test -r "$cache_file"; then
  374.   echo "loading cache $cache_file within ltconfig"
  375.   . $cache_file
  376. fi
  377.  
  378. if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
  379.   # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
  380.   if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
  381.     ac_n= ac_c='
  382. ' ac_t='    '
  383.   else
  384.     ac_n=-n ac_c= ac_t=
  385.   fi
  386. else
  387.   ac_n= ac_c='\c' ac_t=
  388. fi
  389.  
  390. if test -z "$srcdir"; then
  391.   # Assume the source directory is the same one as the path to LTMAIN.
  392.   srcdir=`$echo "X$ltmain" | $Xsed -e 's%/[^/]*$%%'`
  393.   test "$srcdir" = "$ltmain" && srcdir=.
  394. fi
  395.  
  396. trap "$rm conftest*; exit 1" 1 2 15
  397. if test "$verify_host" = yes; then
  398.   # Check for config.guess and config.sub.
  399.   ac_aux_dir=
  400.   for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
  401.     if test -f $ac_dir/config.guess; then
  402.       ac_aux_dir=$ac_dir
  403.       break
  404.     fi
  405.   done
  406.   if test -z "$ac_aux_dir"; then
  407.     echo "$progname: cannot find config.guess in $srcdir $srcdir/.. $srcdir/../.." 1>&2
  408.     echo "$help" 1>&2
  409.     exit 1
  410.   fi
  411.   ac_config_guess=$ac_aux_dir/config.guess
  412.   ac_config_sub=$ac_aux_dir/config.sub
  413.  
  414.   # Make sure we can run config.sub.
  415.   if $SHELL $ac_config_sub sun4 >/dev/null 2>&1; then :
  416.   else
  417.     echo "$progname: cannot run $ac_config_sub" 1>&2
  418.     echo "$help" 1>&2
  419.     exit 1
  420.   fi
  421.  
  422.   echo $ac_n "checking host system type""... $ac_c" 1>&6
  423.  
  424.   host_alias=$host
  425.   case "$host_alias" in
  426.   "")
  427.     if host_alias=`$SHELL $ac_config_guess`; then :
  428.     else
  429.       echo "$progname: cannot guess host type; you must specify one" 1>&2
  430.       echo "$help" 1>&2
  431.       exit 1
  432.     fi ;;
  433.   esac
  434.   host=`$SHELL $ac_config_sub $host_alias`
  435.   echo "$ac_t$host" 1>&6
  436.  
  437.   # Make sure the host verified.
  438.   test -z "$host" && exit 1
  439.  
  440. elif test -z "$host"; then
  441.   echo "$progname: you must specify a host type if you use \`--no-verify'" 1>&2
  442.   echo "$help" 1>&2
  443.   exit 1
  444. else
  445.   host_alias=$host
  446. fi
  447.  
  448. # Transform linux* to *-*-linux-gnu*, to support old configure scripts.
  449. case "$host_os" in
  450. linux-gnu*) ;;
  451. linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
  452. esac
  453.  
  454. host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
  455. host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
  456. host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
  457.  
  458. case "$host_os" in
  459. aix3*)
  460.   # AIX sometimes has problems with the GCC collect2 program.  For some
  461.   # reason, if we set the COLLECT_NAMES environment variable, the problems
  462.   # vanish in a puff of smoke.
  463.   if test "${COLLECT_NAMES+set}" != set; then
  464.     COLLECT_NAMES=
  465.     export COLLECT_NAMES
  466.   fi
  467.   ;;
  468. esac
  469.  
  470. # Determine commands to create old-style static archives.
  471. old_archive_cmds='$AR cru $oldlib$oldobjs'
  472. old_postinstall_cmds='chmod 644 $oldlib'
  473. old_postuninstall_cmds=
  474.  
  475. # Set a sane default for `AR'.
  476. test -z "$AR" && AR=ar
  477.  
  478. # Set a sane default for `OBJDUMP'.
  479. test -z "$OBJDUMP" && OBJDUMP=objdump
  480.  
  481. # If RANLIB is not set, then run the test.
  482. if test "${RANLIB+set}" != "set"; then
  483.   result=no
  484.  
  485.   echo $ac_n "checking for ranlib... $ac_c" 1>&6
  486.   IFS="${IFS=     }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
  487.   for dir in $PATH; do
  488.     test -z "$dir" && dir=.
  489.     if test -f $dir/ranlib || test -f $dir/ranlib$ac_exeext; then
  490.       RANLIB="ranlib"
  491.       result="ranlib"
  492.       break
  493.     fi
  494.   done
  495.   IFS="$save_ifs"
  496.  
  497.   echo "$ac_t$result" 1>&6
  498. fi
  499.  
  500. if test -n "$RANLIB"; then
  501.   old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
  502.   old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
  503. fi
  504.  
  505. # Set sane defaults for `DLLTOOL', `OBJDUMP', and `AS', used on cygwin.
  506. test -z "$DLLTOOL" && DLLTOOL=dlltool
  507. test -z "$OBJDUMP" && OBJDUMP=objdump
  508. test -z "$AS" && AS=as
  509.  
  510. # Check to see if we are using GCC.
  511. if test "$with_gcc" != yes || test -z "$CC"; then
  512.   # If CC is not set, then try to find GCC or a usable CC.
  513.   if test -z "$CC"; then
  514.     echo $ac_n "checking for gcc... $ac_c" 1>&6
  515.     IFS="${IFS=     }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
  516.     for dir in $PATH; do
  517.       test -z "$dir" && dir=.
  518.       if test -f $dir/gcc || test -f $dir/gcc$ac_exeext; then
  519.     CC="gcc"
  520.     break
  521.       fi
  522.     done
  523.     IFS="$save_ifs"
  524.  
  525.     if test -n "$CC"; then
  526.       echo "$ac_t$CC" 1>&6
  527.     else
  528.       echo "$ac_t"no 1>&6
  529.     fi
  530.   fi
  531.  
  532.   # Not "gcc", so try "cc", rejecting "/usr/ucb/cc".
  533.   if test -z "$CC"; then
  534.     echo $ac_n "checking for cc... $ac_c" 1>&6
  535.     IFS="${IFS=     }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
  536.     cc_rejected=no
  537.     for dir in $PATH; do
  538.       test -z "$dir" && dir=.
  539.       if test -f $dir/cc || test -f $dir/cc$ac_exeext; then
  540.     if test "$dir/cc" = "/usr/ucb/cc"; then
  541.       cc_rejected=yes
  542.       continue
  543.     fi
  544.     CC="cc"
  545.     break
  546.       fi
  547.     done
  548.     IFS="$save_ifs"
  549.     if test $cc_rejected = yes; then
  550.       # We found a bogon in the path, so make sure we never use it.
  551.       set dummy $CC
  552.       shift
  553.       if test $# -gt 0; then
  554.     # We chose a different compiler from the bogus one.
  555.     # However, it has the same name, so the bogon will be chosen
  556.     # first if we set CC to just the name; use the full file name.
  557.     shift
  558.     set dummy "$dir/cc" "$@"
  559.     shift
  560.     CC="$@"
  561.       fi
  562.     fi
  563.  
  564.     if test -n "$CC"; then
  565.       echo "$ac_t$CC" 1>&6
  566.     else
  567.       echo "$ac_t"no 1>&6
  568.     fi
  569.  
  570.     if test -z "$CC"; then
  571.       echo "$progname: error: no acceptable cc found in \$PATH" 1>&2
  572.       exit 1
  573.     fi
  574.   fi
  575.  
  576.   # Now see if the compiler is really GCC.
  577.   with_gcc=no
  578.   echo $ac_n "checking whether we are using GNU C... $ac_c" 1>&6
  579.   echo "$progname:579: checking whether we are using GNU C" >&5
  580.  
  581.   $rm conftest.c
  582.   cat > conftest.c <<EOF
  583. #ifdef __GNUC__
  584.   yes;
  585. #endif
  586. EOF
  587.   if { ac_try='${CC-cc} -E conftest.c'; { (eval echo $progname:587: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
  588.     with_gcc=yes
  589.   fi
  590.   $rm conftest.c
  591.   echo "$ac_t$with_gcc" 1>&6
  592. fi
  593.  
  594. # Allow CC to be a program name with arguments.
  595. set dummy $CC
  596. compiler="$2"
  597.  
  598. echo $ac_n "checking for object suffix... $ac_c" 1>&6
  599. $rm conftest*
  600. echo 'int i = 1;' > conftest.c
  601. echo "$progname:601: checking for object suffix" >& 5
  602. if { (eval echo $progname:602: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; }; then
  603.   # Append any warnings to the config.log.
  604.   cat conftest.err 1>&5
  605.  
  606.   for ac_file in conftest.*; do
  607.     case $ac_file in
  608.     *.c) ;;
  609.     *) objext=`echo $ac_file | sed -e s/conftest.//` ;;
  610.     esac
  611.   done
  612. else
  613.   cat conftest.err 1>&5
  614.   echo "$progname: failed program was:" >&5
  615.   cat conftest.c >&5
  616. fi
  617. $rm conftest*
  618. echo "$ac_t$objext" 1>&6
  619.  
  620. echo $ac_n "checking for $compiler option to produce PIC... $ac_c" 1>&6
  621. pic_flag=
  622. special_shlib_compile_flags=
  623. wl=
  624. link_static_flag=
  625. no_builtin_flag=
  626.  
  627. if test "$with_gcc" = yes; then
  628.   wl='-Wl,'
  629.   link_static_flag='-static'
  630.  
  631.   case "$host_os" in
  632.   beos* | irix5* | irix6* | osf3* | osf4*)
  633.     # PIC is the default for these OSes.
  634.     ;;
  635.   aix*)
  636.     # Below there is a dirty hack to force normal static linking with -ldl
  637.     # The problem is because libdl dynamically linked with both libc and
  638.     # libC (AIX C++ library), which obviously doesn't included in libraries
  639.     # list by gcc. This cause undefined symbols with -static flags.
  640.     # This hack allows C programs to be linked with "-static -ldl", but
  641.     # we not sure about C++ programs.
  642.     link_static_flag="$link_static_flag ${wl}-lC"
  643.     ;;
  644.   cygwin* | mingw* | os2*)
  645.     # We can build DLLs from non-PIC.
  646.     ;;
  647.   amigaos*)
  648.     # FIXME: we need at least 68020 code to build shared libraries, but
  649.     # adding the `-m68020' flag to GCC prevents building anything better,
  650.     # like `-m68040'.
  651.     pic_flag='-m68020 -resident32 -malways-restore-a4'
  652.     ;;
  653.   sysv4*MP*)
  654.     if test -d /usr/nec; then
  655.        pic_flag=-Kconform_pic
  656.     fi
  657.     ;;
  658.   *)
  659.     pic_flag='-fPIC'
  660.     ;;
  661.   esac
  662. else
  663.   # PORTME Check for PIC flags for the system compiler.
  664.   case "$host_os" in
  665.   aix3* | aix4*)
  666.     # All AIX code is PIC.
  667.     link_static_flag='-bnso -bI:/lib/syscalls.exp'
  668.     ;;
  669.  
  670.   hpux9* | hpux10* | hpux11*)
  671.     # Is there a better link_static_flag that works with the bundled CC?
  672.     wl='-Wl,'
  673.     link_static_flag="${wl}-a ${wl}archive"
  674.     pic_flag='+Z'
  675.     ;;
  676.  
  677.   irix5* | irix6*)
  678.     wl='-Wl,'
  679.     link_static_flag='-non_shared'
  680.     # PIC (with -KPIC) is the default.
  681.     ;;
  682.  
  683.   cygwin* | mingw* | os2*)
  684.     # We can build DLLs from non-PIC.
  685.     ;;
  686.  
  687.   osf3* | osf4*)
  688.     # All OSF/1 code is PIC.
  689.     wl='-Wl,'
  690.     link_static_flag='-non_shared'
  691.     ;;
  692.  
  693.   sco3.2v5*)
  694.     pic_flag='-Kpic'
  695.     link_static_flag='-dn'
  696.     special_shlib_compile_flags='-belf'
  697.     ;;
  698.  
  699.   solaris*)
  700.     pic_flag='-KPIC'
  701.     link_static_flag='-Bstatic'
  702.     wl='-Wl,'
  703.     ;;
  704.  
  705.   sunos4*)
  706.     pic_flag='-PIC'
  707.     link_static_flag='-Bstatic'
  708.     wl='-Qoption ld '
  709.     ;;
  710.  
  711.   sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
  712.     pic_flag='-KPIC'
  713.     link_static_flag='-Bstatic'
  714.     wl='-Wl,'
  715.     ;;
  716.  
  717.   uts4*)
  718.     pic_flag='-pic'
  719.     link_static_flag='-Bstatic'
  720.     ;;
  721.   sysv4*MP*)
  722.     if test -d /usr/nec ;then
  723.       pic_flag='-Kconform_pic'
  724.       link_static_flag='-Bstatic'
  725.     fi
  726.     ;;
  727.   *)
  728.     can_build_shared=no
  729.     ;;
  730.   esac
  731. fi
  732.  
  733. if test -n "$pic_flag"; then
  734.   echo "$ac_t$pic_flag" 1>&6
  735.  
  736.   # Check to make sure the pic_flag actually works.
  737.   echo $ac_n "checking if $compiler PIC flag $pic_flag works... $ac_c" 1>&6
  738.   $rm conftest*
  739.   echo "int some_variable = 0;" > conftest.c
  740.   save_CFLAGS="$CFLAGS"
  741.   CFLAGS="$CFLAGS $pic_flag -DPIC"
  742.   echo "$progname:742: checking if $compiler PIC flag $pic_flag works" >&5
  743.   if { (eval echo $progname:743: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then
  744.     # Append any warnings to the config.log.
  745.     cat conftest.err 1>&5
  746.     
  747.     case "$host_os" in
  748.     hpux9* | hpux10* | hpux11*)
  749.       # On HP-UX, both CC and GCC only warn that PIC is supported... then they
  750.       # create non-PIC objects.  So, if there were any warnings, we assume that
  751.       # PIC is not supported.
  752.       if test -s conftest.err; then
  753.     echo "$ac_t"no 1>&6
  754.     can_build_shared=no
  755.     pic_flag=
  756.       else
  757.     echo "$ac_t"yes 1>&6
  758.     pic_flag=" $pic_flag"
  759.       fi
  760.       ;;
  761.     *)
  762.       echo "$ac_t"yes 1>&6
  763.       pic_flag=" $pic_flag"
  764.       ;;
  765.     esac
  766.   else
  767.     # Append any errors to the config.log.
  768.     cat conftest.err 1>&5
  769.     can_build_shared=no
  770.     pic_flag=
  771.     echo "$ac_t"no 1>&6
  772.   fi
  773.   CFLAGS="$save_CFLAGS"
  774.   $rm conftest*
  775. else
  776.   echo "$ac_t"none 1>&6
  777. fi
  778.  
  779. # Check to see if options -o and -c are simultaneously supported by compiler
  780. echo $ac_n "checking if $compiler supports -c -o file.o... $ac_c" 1>&6
  781. $rm -r conftest 2>/dev/null
  782. mkdir conftest
  783. cd conftest
  784. $rm conftest*
  785. echo "int some_variable = 0;" > conftest.c
  786. mkdir out
  787. # According to Tom Tromey, Ian Lance Taylor reported there are C compilers
  788. # that will create temporary files in the current directory regardless of
  789. # the output directory.  Thus, making CWD read-only will cause this test
  790. # to fail, enabling locking or at least warning the user not to do parallel
  791. # builds.
  792. chmod -w .
  793. save_CFLAGS="$CFLAGS"
  794. CFLAGS="$CFLAGS -o out/conftest2.o"
  795. echo "$progname:795: checking if $compiler supports -c -o file.o" >&5
  796. if { (eval echo $progname:796: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.o; then
  797.  
  798.   # The compiler can only warn and ignore the option if not recognized
  799.   # So say no if there are warnings
  800.     if test -s out/conftest.err; then
  801.       echo "$ac_t"no 1>&6
  802.       compiler_c_o=no
  803.     else
  804.       echo "$ac_t"yes 1>&6
  805.       compiler_c_o=yes
  806.     fi
  807. else
  808.   # Append any errors to the config.log.
  809.   cat out/conftest.err 1>&5
  810.   compiler_c_o=no
  811.   echo "$ac_t"no 1>&6
  812. fi
  813. CFLAGS="$save_CFLAGS"
  814. chmod u+w .
  815. $rm conftest* out/*
  816. rmdir out
  817. cd ..
  818. rmdir conftest
  819. $rm -r conftest 2>/dev/null
  820.  
  821. if test x"$compiler_c_o" = x"yes"; then
  822.   # Check to see if we can write to a .lo
  823.   echo $ac_n "checking if $compiler supports -c -o file.lo... $ac_c" 1>&6
  824.   $rm conftest*
  825.   echo "int some_variable = 0;" > conftest.c
  826.   save_CFLAGS="$CFLAGS"
  827.   CFLAGS="$CFLAGS -c -o conftest.lo"
  828.   echo "$progname:828: checking if $compiler supports -c -o file.lo" >&5
  829. if { (eval echo $progname:829: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.lo; then
  830.  
  831.     # The compiler can only warn and ignore the option if not recognized
  832.     # So say no if there are warnings
  833.       if test -s conftest.err; then
  834.     echo "$ac_t"no 1>&6
  835.     compiler_o_lo=no
  836.       else
  837.     echo "$ac_t"yes 1>&6
  838.     compiler_o_lo=yes
  839.       fi
  840.   else
  841.     # Append any errors to the config.log.
  842.     cat conftest.err 1>&5
  843.     compiler_o_lo=no
  844.     echo "$ac_t"no 1>&6
  845.   fi
  846.   CFLAGS="$save_CFLAGS"
  847.   $rm conftest*
  848. else
  849.   compiler_o_lo=no
  850. fi
  851.  
  852. # Check to see if we can do hard links to lock some files if needed
  853. hard_links="nottested"
  854. if test "$compiler_c_o" = no && test "$need_locks" != no; then
  855.   # do not overwrite the value of need_locks provided by the user
  856.   echo $ac_n "checking if we can lock with hard links... $ac_c" 1>&6
  857.   hard_links=yes
  858.   $rm conftest*
  859.   ln conftest.a conftest.b 2>/dev/null && hard_links=no
  860.   touch conftest.a
  861.   ln conftest.a conftest.b 2>&5 || hard_links=no
  862.   ln conftest.a conftest.b 2>/dev/null && hard_links=no
  863.   echo "$ac_t$hard_links" 1>&6
  864.   $rm conftest*
  865.   if test "$hard_links" = no; then
  866.     echo "*** WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2
  867.     need_locks=warn
  868.   fi
  869. else
  870.   need_locks=no
  871. fi
  872.  
  873. if test "$with_gcc" = yes; then
  874.   # Check to see if options -fno-rtti -fno-exceptions are supported by compiler
  875.   echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions ... $ac_c" 1>&6
  876.   $rm conftest*
  877.   echo "int some_variable = 0;" > conftest.c
  878.   save_CFLAGS="$CFLAGS"
  879.   CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.c"
  880.   echo "$progname:880: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
  881.   if { (eval echo $progname:881: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.o; then
  882.  
  883.     # The compiler can only warn and ignore the option if not recognized
  884.     # So say no if there are warnings
  885.       if test -s conftest.err; then
  886.     echo "$ac_t"no 1>&6
  887.     compiler_rtti_exceptions=no
  888.       else
  889.     echo "$ac_t"yes 1>&6
  890.     compiler_rtti_exceptions=yes
  891.       fi
  892.   else
  893.     # Append any errors to the config.log.
  894.     cat conftest.err 1>&5
  895.     compiler_rtti_exceptions=no
  896.     echo "$ac_t"no 1>&6
  897.   fi
  898.   CFLAGS="$save_CFLAGS"
  899.   $rm conftest*
  900.  
  901.   if test "$compiler_rtti_exceptions" = "yes"; then
  902.     no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
  903.   else
  904.     no_builtin_flag=' -fno-builtin'
  905.   fi
  906.   
  907. fi
  908.  
  909. # Check for any special shared library compilation flags.
  910. if test -n "$special_shlib_compile_flags"; then
  911.   echo "$progname: warning: \`$CC' requires \`$special_shlib_compile_flags' to build shared libraries" 1>&2
  912.   if echo "$old_CC $old_CFLAGS " | egrep -e "[     ]$special_shlib_compile_flags[     ]" >/dev/null; then :
  913.   else
  914.     echo "$progname: add \`$special_shlib_compile_flags' to the CC or CFLAGS env variable and reconfigure" 1>&2
  915.     can_build_shared=no
  916.   fi
  917. fi
  918.  
  919. echo $ac_n "checking if $compiler static flag $link_static_flag works... $ac_c" 1>&6
  920. $rm conftest*
  921. echo 'main(){return(0);}' > conftest.c
  922. save_LDFLAGS="$LDFLAGS"
  923. LDFLAGS="$LDFLAGS $link_static_flag"
  924. echo "$progname:924: checking if $compiler static flag $link_static_flag works" >&5
  925. if { (eval echo $progname:925: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
  926.   echo "$ac_t$link_static_flag" 1>&6
  927. else
  928.   echo "$ac_t"none 1>&6
  929.   link_static_flag=
  930. fi
  931. LDFLAGS="$save_LDFLAGS"
  932. $rm conftest*
  933.  
  934. if test -z "$LN_S"; then
  935.   # Check to see if we can use ln -s, or we need hard links.
  936.   echo $ac_n "checking whether ln -s works... $ac_c" 1>&6
  937.   $rm conftest.dat
  938.   if ln -s X conftest.dat 2>/dev/null; then
  939.     $rm conftest.dat
  940.     LN_S="ln -s"
  941.   else
  942.     LN_S=ln
  943.   fi
  944.   if test "$LN_S" = "ln -s"; then
  945.     echo "$ac_t"yes 1>&6
  946.   else
  947.     echo "$ac_t"no 1>&6
  948.   fi
  949. fi
  950.  
  951. # Make sure LD is an absolute path.
  952. if test -z "$LD"; then
  953.   ac_prog=ld
  954.   if test "$with_gcc" = yes; then
  955.     # Check if gcc -print-prog-name=ld gives a path.
  956.     echo $ac_n "checking for ld used by GCC... $ac_c" 1>&6
  957.     echo "$progname:957: checking for ld used by GCC" >&5
  958.     ac_prog=`($CC -print-prog-name=ld) 2>&5`
  959.     case "$ac_prog" in
  960.     # Accept absolute paths.
  961.     [\\/]* | [A-Za-z]:[\\/]*)
  962.       re_direlt='/[^/][^/]*/\.\./'
  963.       # Canonicalize the path of ld
  964.       ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'`
  965.       while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do
  966.     ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"`
  967.       done
  968.       test -z "$LD" && LD="$ac_prog"
  969.       ;;
  970.     "")
  971.       # If it fails, then pretend we are not using GCC.
  972.       ac_prog=ld
  973.       ;;
  974.     *)
  975.       # If it is relative, then search for the first ld in PATH.
  976.       with_gnu_ld=unknown
  977.       ;;
  978.     esac
  979.   elif test "$with_gnu_ld" = yes; then
  980.     echo $ac_n "checking for GNU ld... $ac_c" 1>&6
  981.     echo "$progname:981: checking for GNU ld" >&5
  982.   else
  983.     echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
  984.     echo "$progname:984: checking for non-GNU ld" >&5
  985.   fi
  986.  
  987.   if test -z "$LD"; then
  988.     IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
  989.     for ac_dir in $PATH; do
  990.       test -z "$ac_dir" && ac_dir=.
  991.       if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
  992.     LD="$ac_dir/$ac_prog"
  993.     # Check to see if the program is GNU ld.  I'd rather use --version,
  994.     # but apparently some GNU ld's only accept -v.
  995.     # Break only if it was the GNU/non-GNU ld that we prefer.
  996.     if "$LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
  997.       test "$with_gnu_ld" != no && break
  998.     else
  999.       test "$with_gnu_ld" != yes && break
  1000.     fi
  1001.       fi
  1002.     done
  1003.     IFS="$ac_save_ifs"
  1004.   fi
  1005.  
  1006.   if test -n "$LD"; then
  1007.     echo "$ac_t$LD" 1>&6
  1008.   else
  1009.     echo "$ac_t"no 1>&6
  1010.   fi
  1011.  
  1012.   if test -z "$LD"; then
  1013.     echo "$progname: error: no acceptable ld found in \$PATH" 1>&2
  1014.     exit 1
  1015.   fi
  1016. fi
  1017.  
  1018. # Check to see if it really is or is not GNU ld.
  1019. echo $ac_n "checking if the linker ($LD) is GNU ld... $ac_c" 1>&6
  1020. # I'd rather use --version here, but apparently some GNU ld's only accept -v.
  1021. if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
  1022.   with_gnu_ld=yes
  1023. else
  1024.   with_gnu_ld=no
  1025. fi
  1026. echo "$ac_t$with_gnu_ld" 1>&6
  1027.  
  1028. # See if the linker supports building shared libraries.
  1029. echo $ac_n "checking whether the linker ($LD) supports shared libraries... $ac_c" 1>&6
  1030.  
  1031. allow_undefined_flag=
  1032. no_undefined_flag=
  1033. need_lib_prefix=unknown
  1034. need_version=unknown
  1035. # when you set need_version to no, make sure it does not cause -set_version
  1036. # flags to be left without arguments
  1037. archive_cmds=
  1038. archive_expsym_cmds=
  1039. old_archive_from_new_cmds=
  1040. export_dynamic_flag_spec=
  1041. whole_archive_flag_spec=
  1042. thread_safe_flag_spec=
  1043. hardcode_libdir_flag_spec=
  1044. hardcode_libdir_separator=
  1045. hardcode_direct=no
  1046. hardcode_minus_L=no
  1047. hardcode_shlibpath_var=unsupported
  1048. runpath_var=
  1049. always_export_symbols=no
  1050. export_symbols_cmds='$NM $libobjs | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
  1051. # include_expsyms should be a list of space-separated symbols to be *always*
  1052. # included in the symbol list
  1053. include_expsyms=
  1054. # exclude_expsyms can be an egrep regular expression of symbols to exclude
  1055. # it will be wrapped by ` (' and `)$', so one must not match beginning or
  1056. # end of line.  Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
  1057. # as well as any symbol that contains `d'.
  1058. exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
  1059. # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
  1060. # platforms (ab)use it in PIC code, but their linkers get confused if
  1061. # the symbol is explicitly referenced.  Since portable code cannot
  1062. # rely on this symbol name, it's probably fine to never include it in
  1063. # preloaded symbol tables.
  1064.  
  1065. case "$host_os" in
  1066. cygwin* | mingw*)
  1067.   # FIXME: the MSVC++ port hasn't been tested in a loooong time
  1068.   # When not using gcc, we currently assume that we are using
  1069.   # Microsoft Visual C++.
  1070.   if test "$with_gcc" != yes; then
  1071.     with_gnu_ld=no
  1072.   fi
  1073.   ;;
  1074.  
  1075. esac
  1076.  
  1077. ld_shlibs=yes
  1078. if test "$with_gnu_ld" = yes; then
  1079.   # If archive_cmds runs LD, not CC, wlarc should be empty
  1080.   wlarc='${wl}'
  1081.  
  1082.   # See if GNU ld supports shared libraries.
  1083.   case "$host_os" in
  1084.   aix3* | aix4*)
  1085.     # On AIX, the GNU linker is very broken
  1086.     ld_shlibs=no
  1087.     cat <<EOF 1>&2
  1088.  
  1089. *** Warning: the GNU linker, at least up to release 2.9.1, is reported
  1090. *** to be unable to reliably create shared libraries on AIX.
  1091. *** Therefore, libtool is disabling shared libraries support.  If you
  1092. *** really care for shared libraries, you may want to modify your PATH
  1093. *** so that a non-GNU linker is found, and then restart.
  1094.  
  1095. EOF
  1096.     ;;
  1097.  
  1098.   amigaos*)
  1099.     archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)'
  1100.     hardcode_libdir_flag_spec='-L$libdir'
  1101.     hardcode_minus_L=yes
  1102.  
  1103.     # Samuel A. Falvo II <kc5tja@dolphin.openprojects.net> reports
  1104.     # that the semantics of dynamic libraries on AmigaOS, at least up
  1105.     # to version 4, is to share data among multiple programs linked
  1106.     # with the same dynamic library.  Since this doesn't match the
  1107.     # behavior of shared libraries on other platforms, we can use
  1108.     # them.
  1109.     ld_shlibs=no
  1110.     ;;
  1111.  
  1112.   beos*)
  1113.     if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
  1114.       allow_undefined_flag=unsupported
  1115.       # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
  1116.       # support --undefined.  This deserves some investigation.  FIXME
  1117.       archive_cmds='$CC -nostart $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
  1118.     else
  1119.       ld_shlibs=no
  1120.     fi
  1121.     ;;
  1122.  
  1123.   cygwin* | mingw*)
  1124.     # hardcode_libdir_flag_spec is actually meaningless, as there is
  1125.     # no search path for DLLs.
  1126.     hardcode_libdir_flag_spec='-L$libdir'
  1127.     allow_undefined_flag=unsupported
  1128.     always_export_symbols=yes
  1129.  
  1130.     # Extract the symbol export list from an `--export-all' def file,
  1131.     # then regenerate the def file from the symbol export list, so that
  1132.     # the compiled dll only exports the symbol export list.
  1133.     export_symbols_cmds='rm -f $objdir/$soname-ltdll.c~
  1134.       sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
  1135.       (cd $objdir && $CC -c $soname-ltdll.c)~
  1136.       $DLLTOOL --export-all --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $objdir/$soname-def  $objdir/$soname-ltdll.$objext $libobjs~
  1137.       sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]* ; *//" < $objdir/$soname-def > $export_symbols'
  1138.  
  1139.     archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~
  1140.       _lt_hint=1;
  1141.       for symbol in `cat $export_symbols`; do
  1142.     echo "    \$symbol @ \$_lt_hint ; " >> $objdir/$soname-def;
  1143.     _lt_hint=`expr 1 + \$_lt_hint`;
  1144.       done~
  1145.       $CC -Wl,--base-file,$objdir/$soname-base -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
  1146.       $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
  1147.       $CC -Wl,--base-file,$objdir/$soname-base $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
  1148.       $DLLTOOL --as=$AS --dllname $soname --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
  1149.       $CC $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,__cygwin_dll_entry@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts'
  1150.  
  1151.       old_archive_from_new_cmds='$DLLTOOL --as=$AS --dllname $soname --def $objdir/$soname-def --output-lib $objdir/$libname.a'
  1152.     ;;
  1153.  
  1154.   netbsd*)
  1155.     if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
  1156.       archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
  1157.       archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  1158.     else
  1159.       archive_cmds='$LD -Bshareable $libobjs $deplibs $linkopts -o $lib'
  1160.       # can we support soname and/or expsyms with a.out? -oliva
  1161.     fi
  1162.     ;;
  1163.  
  1164.   solaris*)
  1165.     if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
  1166.       ld_shlibs=no
  1167.       cat <<EOF 1>&2
  1168.  
  1169. *** Warning: The releases 2.8.* of the GNU linker cannot reliably
  1170. *** create shared libraries on Solaris systems.  Therefore, libtool
  1171. *** is disabling shared libraries support.  We urge you to upgrade GNU
  1172. *** binutils to release 2.9.1 or newer.  Another option is to modify
  1173. *** your PATH or compiler configuration so that the native linker is
  1174. *** used, and then restart.
  1175.  
  1176. EOF
  1177.     elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
  1178.       archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
  1179.       archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  1180.     else
  1181.       ld_shlibs=no
  1182.     fi
  1183.     ;;      
  1184.  
  1185.   sunos4*)
  1186.     archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linkopts'
  1187.     wlarc=
  1188.     hardcode_direct=yes
  1189.     hardcode_shlibpath_var=no
  1190.     ;;
  1191.  
  1192.   *)
  1193.     if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
  1194.       archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
  1195.       archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
  1196.     else
  1197.       ld_shlibs=no
  1198.     fi
  1199.     ;;
  1200.   esac
  1201.  
  1202.   if test "$ld_shlibs" = yes; then
  1203.     runpath_var=LD_RUN_PATH
  1204.     hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir'
  1205.     export_dynamic_flag_spec='${wl}--export-dynamic'
  1206.     case $host_os in
  1207.     cygwin* | mingw*)
  1208.       # dlltool doesn't understand --whole-archive et. al.
  1209.       whole_archive_flag_spec=
  1210.       ;;
  1211.     *)
  1212.       whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
  1213.       ;;
  1214.     esac
  1215.   fi
  1216. else
  1217.   # PORTME fill in a description of your system's linker (not GNU ld)
  1218.   case "$host_os" in
  1219.   aix3*)
  1220.     allow_undefined_flag=unsupported
  1221.     always_export_symbols=yes
  1222.     archive_expsym_cmds='$LD -o $objdir/$soname $libobjs $deplibs $linkopts -bE:$export_symbols -T512 -H512 -bM:SRE~$AR cru $lib $objdir/$soname'
  1223.     # Note: this linker hardcodes the directories in LIBPATH if there
  1224.     # are no directories specified by -L.
  1225.     hardcode_minus_L=yes
  1226.     if test "$with_gcc" = yes && test -z "$link_static_flag"; then
  1227.       # Neither direct hardcoding nor static linking is supported with a
  1228.       # broken collect2.
  1229.       hardcode_direct=unsupported
  1230.     fi
  1231.     ;;
  1232.  
  1233.   aix4*)
  1234.     hardcode_libdir_flag_spec='${wl}-b ${wl}nolibpath ${wl}-b ${wl}libpath:$libdir:/usr/lib:/lib'
  1235.     hardcode_libdir_separator=':'
  1236.     if test "$with_gcc" = yes; then
  1237.       collect2name=`${CC} -print-prog-name=collect2`
  1238.       if test -f "$collect2name" && \
  1239.      strings "$collect2name" | grep resolve_lib_name >/dev/null
  1240.       then
  1241.     # We have reworked collect2
  1242.     hardcode_direct=yes
  1243.       else
  1244.     # We have old collect2
  1245.     hardcode_direct=unsupported
  1246.     # It fails to find uninstalled libraries when the uninstalled
  1247.     # path is not listed in the libpath.  Setting hardcode_minus_L
  1248.     # to unsupported forces relinking
  1249.     hardcode_minus_L=yes
  1250.     hardcode_libdir_flag_spec='-L$libdir'
  1251.     hardcode_libdir_separator=
  1252.       fi
  1253.       shared_flag='-shared'
  1254.     else
  1255.       shared_flag='${wl}-bM:SRE'
  1256.       hardcode_direct=yes
  1257.     fi
  1258.     allow_undefined_flag=' ${wl}-berok'
  1259.     archive_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bexpall ${wl}-bnoentry${allow_undefined_flag}'
  1260.     archive_expsym_cmds="\$CC $shared_flag"' -o $objdir/$soname $libobjs $deplibs $linkopts ${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}'
  1261.     case "$host_os" in aix4.[01]|aix4.[01].*)
  1262.       # According to Greg Wooledge, -bexpall is only supported from AIX 4.2 on
  1263.       always_export_symbols=yes ;;
  1264.     esac
  1265.    ;;
  1266.  
  1267.   amigaos*)
  1268.     archive_cmds='$rm $objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $objdir/a2ixlibrary.data~$AR cru $lib $libobjs~$RANLIB $lib~(cd $objdir && a2ixlibrary -32)'
  1269.     hardcode_libdir_flag_spec='-L$libdir'
  1270.     hardcode_minus_L=yes
  1271.     # see comment about different semantics on the GNU ld section
  1272.     ld_shlibs=no
  1273.     ;;
  1274.  
  1275.   cygwin* | mingw*)
  1276.     # When not using gcc, we currently assume that we are using
  1277.     # Microsoft Visual C++.
  1278.     # hardcode_libdir_flag_spec is actually meaningless, as there is
  1279.     # no search path for DLLs.
  1280.     hardcode_libdir_flag_spec=' '
  1281.     allow_undefined_flag=unsupported
  1282.     # Tell ltmain to make .lib files, not .a files.
  1283.     libext=lib
  1284.     # FIXME: Setting linknames here is a bad hack.
  1285.     archive_cmds='$CC -o $lib $libobjs $linkopts `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames='
  1286.     # The linker will automatically build a .lib file if we build a DLL.
  1287.     old_archive_from_new_cmds='true'
  1288.     # FIXME: Should let the user specify the lib program.
  1289.     old_archive_cmds='lib /OUT:$oldlib$oldobjs'
  1290.     fix_srcfile_path='`cygpath -w $srcfile`'
  1291.     ;;
  1292.  
  1293.   freebsd1*)
  1294.     ld_shlibs=no
  1295.     ;;
  1296.  
  1297.   # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
  1298.   # support.  Future versions do this automatically, but an explicit c++rt0.o
  1299.   # does not break anything, and helps significantly (at the cost of a little
  1300.   # extra space).
  1301.   freebsd2.2*)
  1302.     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts /usr/lib/c++rt0.o'
  1303.     hardcode_libdir_flag_spec='-R$libdir'
  1304.     hardcode_direct=yes
  1305.     hardcode_shlibpath_var=no
  1306.     ;;
  1307.  
  1308.   # Unfortunately, older versions of FreeBSD 2 do not have this feature.
  1309.   freebsd2*)
  1310.     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
  1311.     hardcode_direct=yes
  1312.     hardcode_minus_L=yes
  1313.     hardcode_shlibpath_var=no
  1314.     ;;
  1315.  
  1316.   # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
  1317.   freebsd*)
  1318.     archive_cmds='$CC -shared -o $lib $libobjs $deplibs $linkopts'
  1319.     hardcode_libdir_flag_spec='-R$libdir'
  1320.     hardcode_direct=yes
  1321.     hardcode_shlibpath_var=no
  1322.     ;;
  1323.  
  1324.   hpux9* | hpux10* | hpux11*)
  1325.     case "$host_os" in
  1326.     hpux9*) archive_cmds='$rm $objdir/$soname~$LD -b +b $install_libdir -o $objdir/$soname $libobjs $deplibs $linkopts~test $objdir/$soname = $lib || mv $objdir/$soname $lib' ;;
  1327.     *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linkopts' ;;
  1328.     esac
  1329.     hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
  1330.     hardcode_libdir_separator=:
  1331.     hardcode_direct=yes
  1332.     hardcode_minus_L=yes # Not in the search PATH, but as the default
  1333.              # location of the library.
  1334.     export_dynamic_flag_spec='${wl}-E'
  1335.     ;;
  1336.  
  1337.   irix5* | irix6*)
  1338.     if test "$with_gcc" = yes; then
  1339.       archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
  1340.     else
  1341.       archive_cmds='$LD -shared $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
  1342.     fi
  1343.     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
  1344.     hardcode_libdir_separator=:
  1345.     ;;
  1346.  
  1347.   netbsd*)
  1348.     if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
  1349.       archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'  # a.out
  1350.     else
  1351.       archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linkopts'      # ELF
  1352.     fi
  1353.     hardcode_libdir_flag_spec='${wl}-R$libdir'
  1354.     hardcode_direct=yes
  1355.     hardcode_shlibpath_var=no
  1356.     ;;
  1357.  
  1358.   openbsd*)
  1359.     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
  1360.     hardcode_libdir_flag_spec='-R$libdir'
  1361.     hardcode_direct=yes
  1362.     hardcode_shlibpath_var=no
  1363.     ;;
  1364.  
  1365.   os2*)
  1366.     hardcode_libdir_flag_spec='-L$libdir'
  1367.     hardcode_minus_L=yes
  1368.     allow_undefined_flag=unsupported
  1369.     archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $objdir/$libname.def~$echo DATA >> $objdir/$libname.def~$echo " SINGLE NONSHARED" >> $objdir/$libname.def~$echo EXPORTS >> $objdir/$libname.def~emxexp $libobjs >> $objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $linkopts $objdir/$libname.def'
  1370.     old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def'
  1371.     ;;
  1372.  
  1373.   osf3* | osf4*)
  1374.     if test "$with_gcc" = yes; then
  1375.       allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*'
  1376.       archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib'
  1377.     else
  1378.       allow_undefined_flag=' -expect_unresolved \*'
  1379.       archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib'
  1380.     fi
  1381.     hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir'
  1382.     hardcode_libdir_separator=:
  1383.     ;;
  1384.  
  1385.   sco3.2v5*)
  1386.     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
  1387.     hardcode_shlibpath_var=no
  1388.     runpath_var=LD_RUN_PATH
  1389.     hardcode_runpath_var=yes
  1390.     ;;
  1391.  
  1392.   solaris*)
  1393.     no_undefined_flag=' -z text'
  1394.     # $CC -shared without GNU ld will not create a library from C++
  1395.     # object files and a static libstdc++, better avoid it by now
  1396.     archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linkopts'
  1397.     archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
  1398.         $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp'
  1399.     hardcode_libdir_flag_spec='-R$libdir'
  1400.     hardcode_shlibpath_var=no
  1401.     case "$host_os" in
  1402.     solaris2.[0-5] | solaris2.[0-5].*) ;;
  1403.     *) # Supported since Solaris 2.6 (maybe 2.5.1?)
  1404.       whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;;
  1405.     esac
  1406.     ;;
  1407.  
  1408.   sunos4*)
  1409.     archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linkopts'
  1410.     hardcode_libdir_flag_spec='-L$libdir'
  1411.     hardcode_direct=yes
  1412.     hardcode_minus_L=yes
  1413.     hardcode_shlibpath_var=no
  1414.     ;;
  1415.  
  1416.   sysv4)
  1417.     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
  1418.     runpath_var='LD_RUN_PATH'
  1419.     hardcode_shlibpath_var=no
  1420.     hardcode_direct=no #Motorola manual says yes, but my tests say they lie 
  1421.     ;;  
  1422.  
  1423.   sysv4.3*)
  1424.     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
  1425.     hardcode_shlibpath_var=no
  1426.     export_dynamic_flag_spec='-Bexport'
  1427.     ;;
  1428.  
  1429.   uts4*)
  1430.     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
  1431.     hardcode_libdir_flag_spec='-L$libdir'
  1432.     hardcode_shlibpath_var=no
  1433.     ;;
  1434.  
  1435.   dgux*)
  1436.     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
  1437.     hardcode_libdir_flag_spec='-L$libdir'
  1438.     hardcode_shlibpath_var=no
  1439.     ;;
  1440.  
  1441.   sysv4*MP*)
  1442.     if test -d /usr/nec ;then
  1443.     # archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs$deplibs'
  1444.     archive_cmds='$LD -G -h $soname -o $lib$libobjs$deplibs'
  1445.     hardcode_shlibpath_var=no
  1446.     runpath_var=LD_RUN_PATH
  1447.     hardcode_runpath_var=yes
  1448.     ld_shlibs=yes
  1449.     fi
  1450.     ;;
  1451.  
  1452.   *)
  1453.     ld_shlibs=no
  1454.     ;;
  1455.   esac
  1456. fi
  1457. echo "$ac_t$ld_shlibs" 1>&6
  1458. test "$ld_shlibs" = no && can_build_shared=no
  1459.  
  1460. if test -z "$NM"; then
  1461.   echo $ac_n "checking for BSD-compatible nm... $ac_c" 1>&6
  1462.   case "$NM" in
  1463.   [\\/]* | [A-Za-z]:[\\/]*) ;; # Let the user override the test with a path.
  1464.   *)
  1465.     IFS="${IFS=     }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
  1466.     for ac_dir in $PATH /usr/ucb /usr/ccs/bin /bin; do
  1467.       test -z "$ac_dir" && ac_dir=.
  1468.       if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext; then
  1469.     # Check to see if the nm accepts a BSD-compat flag.
  1470.     # Adding the `sed 1q' prevents false positives on HP-UX, which says:
  1471.     #   nm: unknown option "B" ignored
  1472.     if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
  1473.       NM="$ac_dir/nm -B"
  1474.       break
  1475.     elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
  1476.       NM="$ac_dir/nm -p"
  1477.       break
  1478.     else
  1479.       NM=${NM="$ac_dir/nm"} # keep the first match, but
  1480.       continue # so that we can try to find one that supports BSD flags
  1481.     fi
  1482.       fi
  1483.     done
  1484.     IFS="$ac_save_ifs"
  1485.     test -z "$NM" && NM=nm
  1486.     ;;
  1487.   esac
  1488.   echo "$ac_t$NM" 1>&6
  1489. fi
  1490.  
  1491. # Check for command to grab the raw symbol name followed by C symbol from nm.
  1492. echo $ac_n "checking command to parse $NM output... $ac_c" 1>&6
  1493.  
  1494. # These are sane defaults that work on at least a few old systems.
  1495. # [They come from Ultrix.  What could be older than Ultrix?!! ;)]
  1496.  
  1497. # Character class describing NM global symbol codes.
  1498. symcode='[BCDEGRST]'
  1499.  
  1500. # Regexp to match symbols that can be accessed directly from C.
  1501. sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
  1502.  
  1503. # Transform the above into a raw symbol and a C symbol.
  1504. symxfrm='\1 \2\3 \3'
  1505.  
  1506. # Transform an extracted symbol line into a proper C declaration
  1507. global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
  1508.  
  1509. # Define system-specific variables.
  1510. case "$host_os" in
  1511. aix*)
  1512.   symcode='[BCDT]'
  1513.   ;;
  1514. cygwin* | mingw*)
  1515.   symcode='[ABCDGISTW]'
  1516.   ;;
  1517. hpux*) # Its linker distinguishes data from code symbols
  1518.   global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^. .* \(.*\)$/extern char \1;/p'"
  1519.   ;;
  1520. irix*)
  1521.   symcode='[BCDEGRST]'
  1522.   ;;
  1523. solaris*)
  1524.   symcode='[BDT]'
  1525.   ;;
  1526. sysv4)
  1527.   symcode='[DFNSTU]'
  1528.   ;;
  1529. esac
  1530.  
  1531. # If we're using GNU nm, then use its standard symbol codes.
  1532. if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
  1533.   symcode='[ABCDGISTW]'
  1534. fi
  1535.  
  1536. # Try without a prefix undercore, then with it.
  1537. for ac_symprfx in "" "_"; do
  1538.  
  1539.   # Write the raw and C identifiers.
  1540.   global_symbol_pipe="sed -n -e 's/^.*[     ]\($symcode\)[     ][     ]*\($ac_symprfx\)$sympat$/$symxfrm/p'"
  1541.  
  1542.   # Check to see that the pipe works correctly.
  1543.   pipe_works=no
  1544.   $rm conftest*
  1545.   cat > conftest.c <<EOF
  1546. #ifdef __cplusplus
  1547. extern "C" {
  1548. #endif
  1549. char nm_test_var;
  1550. void nm_test_func(){}
  1551. #ifdef __cplusplus
  1552. }
  1553. #endif
  1554. main(){nm_test_var='a';nm_test_func();return(0);}
  1555. EOF
  1556.  
  1557.   echo "$progname:1557: checking if global_symbol_pipe works" >&5
  1558.   if { (eval echo $progname:1558: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then
  1559.     # Now try to grab the symbols.
  1560.     nlist=conftest.nm
  1561.     if { echo "$progname:1561: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
  1562.  
  1563.       # Try sorting and uniquifying the output.
  1564.       if sort "$nlist" | uniq > "$nlist"T; then
  1565.     mv -f "$nlist"T "$nlist"
  1566.       else
  1567.     rm -f "$nlist"T
  1568.       fi
  1569.  
  1570.       # Make sure that we snagged all the symbols we need.
  1571.       if egrep ' nm_test_var$' "$nlist" >/dev/null; then
  1572.     if egrep ' nm_test_func$' "$nlist" >/dev/null; then
  1573.       cat <<EOF > conftest.c
  1574. #ifdef __cplusplus
  1575. extern "C" {
  1576. #endif
  1577.  
  1578. EOF
  1579.       # Now generate the symbol file.
  1580.       eval "$global_symbol_to_cdecl"' < "$nlist" >> conftest.c'
  1581.  
  1582.       cat <<EOF >> conftest.c
  1583. #if defined (__STDC__) && __STDC__
  1584. # define lt_ptr_t void *
  1585. #else
  1586. # define lt_ptr_t char *
  1587. # define const
  1588. #endif
  1589.  
  1590. /* The mapping between symbol names and symbols. */
  1591. const struct {
  1592.   const char *name;
  1593.   lt_ptr_t address;
  1594. }
  1595. lt_preloaded_symbols[] =
  1596. {
  1597. EOF
  1598.       sed 's/^. \(.*\) \(.*\)$/  {"\2", (lt_ptr_t) \&\2},/' < "$nlist" >> conftest.c
  1599.       cat <<\EOF >> conftest.c
  1600.   {0, (lt_ptr_t) 0}
  1601. };
  1602.  
  1603. #ifdef __cplusplus
  1604. }
  1605. #endif
  1606. EOF
  1607.       # Now try linking the two files.
  1608.       mv conftest.$objext conftstm.$objext
  1609.       save_LIBS="$LIBS"
  1610.       save_CFLAGS="$CFLAGS"
  1611.       LIBS="conftstm.$objext"
  1612.       CFLAGS="$CFLAGS$no_builtin_flag"
  1613.       if { (eval echo $progname:1613: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
  1614.         pipe_works=yes
  1615.       else
  1616.         echo "$progname: failed program was:" >&5
  1617.         cat conftest.c >&5
  1618.       fi
  1619.       LIBS="$save_LIBS"
  1620.     else
  1621.       echo "cannot find nm_test_func in $nlist" >&5
  1622.     fi
  1623.       else
  1624.     echo "cannot find nm_test_var in $nlist" >&5
  1625.       fi
  1626.     else
  1627.       echo "cannot run $global_symbol_pipe" >&5
  1628.     fi
  1629.   else
  1630.     echo "$progname: failed program was:" >&5
  1631.     cat conftest.c >&5
  1632.   fi
  1633.   $rm conftest* conftst*
  1634.  
  1635.   # Do not use the global_symbol_pipe unless it works.
  1636.   if test "$pipe_works" = yes; then
  1637.     break
  1638.   else
  1639.     global_symbol_pipe=
  1640.   fi
  1641. done
  1642. if test "$pipe_works" = yes; then
  1643.   echo "${ac_t}ok" 1>&6
  1644. else
  1645.   echo "${ac_t}failed" 1>&6
  1646. fi
  1647.  
  1648. if test -z "$global_symbol_pipe"; then
  1649.   global_symbol_to_cdecl=
  1650. fi
  1651.  
  1652. # Check hardcoding attributes.
  1653. echo $ac_n "checking how to hardcode library paths into programs... $ac_c" 1>&6
  1654. hardcode_action=
  1655. if test -n "$hardcode_libdir_flag_spec" || \
  1656.    test -n "$runpath_var"; then
  1657.  
  1658.   # We can hardcode non-existant directories.
  1659.   if test "$hardcode_direct" != no &&
  1660.      # If the only mechanism to avoid hardcoding is shlibpath_var, we
  1661.      # have to relink, otherwise we might link with an installed library
  1662.      # when we should be linking with a yet-to-be-installed one
  1663.      ## test "$hardcode_shlibpath_var" != no &&
  1664.      test "$hardcode_minus_L" != no; then
  1665.     # Linking always hardcodes the temporary library directory.
  1666.     hardcode_action=relink
  1667.   else
  1668.     # We can link without hardcoding, and we can hardcode nonexisting dirs.
  1669.     hardcode_action=immediate
  1670.   fi
  1671. else
  1672.   # We cannot hardcode anything, or else we can only hardcode existing
  1673.   # directories.
  1674.   hardcode_action=unsupported
  1675. fi
  1676. echo "$ac_t$hardcode_action" 1>&6
  1677.  
  1678.  
  1679. reload_flag=
  1680. reload_cmds='$LD$reload_flag -o $output$reload_objs'
  1681. echo $ac_n "checking for $LD option to reload object files... $ac_c" 1>&6
  1682. # PORTME Some linkers may need a different reload flag.
  1683. reload_flag='-r'
  1684. echo "$ac_t$reload_flag" 1>&6
  1685. test -n "$reload_flag" && reload_flag=" $reload_flag"
  1686.  
  1687. # PORTME Fill in your ld.so characteristics
  1688. library_names_spec=
  1689. libname_spec='lib$name'
  1690. soname_spec=
  1691. postinstall_cmds=
  1692. postuninstall_cmds=
  1693. finish_cmds=
  1694. finish_eval=
  1695. shlibpath_var=
  1696. shlibpath_overrides_runpath=unknown
  1697. version_type=none
  1698. dynamic_linker="$host_os ld.so"
  1699. sys_lib_dlsearch_path_spec="/lib /usr/lib"
  1700. sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
  1701. file_magic_cmd=
  1702. file_magic_test_file=
  1703. deplibs_check_method='unknown'
  1704. # Need to set the preceding variable on all platforms that support
  1705. # interlibrary dependencies.
  1706. # 'none' -- dependencies not supported.
  1707. # `unknown' -- same as none, but documents that we really don't know.
  1708. # 'pass_all' -- all dependencies passed with no checks.
  1709. # 'test_compile' -- check by making test program.
  1710. # 'file_magic [regex]' -- check by looking for files in library path
  1711. # which responds to the $file_magic_cmd with a given egrep regex.
  1712. # If you have `file' or equivalent on your system and you're not sure
  1713. # whether `pass_all' will *always* work, you probably want this one.
  1714. echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6
  1715. case "$host_os" in
  1716. aix3*)
  1717.   version_type=linux
  1718.   library_names_spec='${libname}${release}.so$versuffix $libname.a'
  1719.   shlibpath_var=LIBPATH
  1720.  
  1721.   # AIX has no versioning support, so we append a major version to the name.
  1722.   soname_spec='${libname}${release}.so$major'
  1723.   ;;
  1724.  
  1725. aix4*)
  1726.   version_type=linux
  1727.   # AIX has no versioning support, so currently we can not hardcode correct
  1728.   # soname into executable. Probably we can add versioning support to
  1729.   # collect2, so additional links can be useful in future.
  1730.   # We preserve .a as extension for shared libraries though AIX4.2
  1731.   # and later linker supports .so
  1732.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.a'
  1733.   shlibpath_var=LIBPATH
  1734.   deplibs_check_method=pass_all
  1735.   ;;
  1736.  
  1737. amigaos*)
  1738.   library_names_spec='$libname.ixlibrary $libname.a'
  1739.   # Create ${libname}_ixlibrary.a entries in /sys/libs.
  1740.   finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
  1741.   ;;
  1742.  
  1743. beos*)
  1744.   library_names_spec='${libname}.so'
  1745.   dynamic_linker="$host_os ld.so"
  1746.   shlibpath_var=LIBRARY_PATH
  1747.   deplibs_check_method=pass_all
  1748.   lt_cv_dlopen="load_add_on"
  1749.   lt_cv_dlopen_libs=
  1750.   lt_cv_dlopen_self=yes
  1751.   ;;
  1752.  
  1753. bsdi4*)
  1754.   version_type=linux
  1755.   library_names_spec='${libname}.so$major ${libname}.so'
  1756.   soname_spec='${libname}.so'
  1757.   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
  1758.   shlibpath_var=LD_LIBRARY_PATH
  1759.   deplibs_check_method='file_magic ELF 32-bit LSB shared object'
  1760.   file_magic_cmd=/usr/bin/file
  1761.   file_magic_test_file=/shlib/libc.so
  1762.   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
  1763.   sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
  1764.   # the default ld.so.conf also contains /usr/contrib/lib and
  1765.   # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
  1766.   # libtool to hard-code these into programs
  1767.   ;;
  1768.  
  1769. cygwin* | mingw*)
  1770.   version_type=windows
  1771.   if test "$with_gcc" = yes; then
  1772.     library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.a'
  1773.   else
  1774.     library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib'
  1775.   fi
  1776.   dynamic_linker='Win32 ld.exe'
  1777.   deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?'
  1778.   file_magic_cmd='${OBJDUMP} -f'
  1779.   need_lib_prefix=no
  1780.   # FIXME: first we should search . and the directory the executable is in
  1781.   shlibpath_var=PATH
  1782.   lt_cv_dlopen="LoadLibrary"
  1783.   lt_cv_dlopen_libs=
  1784.   ;;
  1785.  
  1786. freebsd1*)
  1787.   dynamic_linker=no
  1788.   ;;
  1789.   
  1790. freebsd*)
  1791.   objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
  1792.   version_type=freebsd-$objformat
  1793.   case "$version_type" in
  1794.     freebsd-elf*)
  1795.       deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object'
  1796.       file_magic_cmd=/usr/bin/file
  1797.       file_magic_test_file=`echo /usr/lib/libc.so*`
  1798.       library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
  1799.       need_version=no
  1800.       need_lib_prefix=no
  1801.       ;;
  1802.     freebsd-*)
  1803.       deplibs_check_method=unknown
  1804.       library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
  1805.       need_version=yes
  1806.       ;;
  1807.   esac
  1808.   finish_cmds='PATH="\$PATH:/sbin" OBJFORMAT="'"$objformat"'" ldconfig -m $libdir'
  1809.   shlibpath_var=LD_LIBRARY_PATH
  1810.   ;;
  1811.  
  1812. gnu*)
  1813.   version_type=linux
  1814.   library_names_spec='${libname}${release}.so$versuffix ${libname}.so'
  1815.   shlibpath_var=LD_LIBRARY_PATH
  1816.   ;;
  1817.  
  1818. hpux9* | hpux10* | hpux11*)
  1819.   # Give a soname corresponding to the major version so that dld.sl refuses to
  1820.   # link against other versions.
  1821.   dynamic_linker="$host_os dld.sl"
  1822.   version_type=sunos
  1823.   need_lib_prefix=no
  1824.   need_version=no
  1825.   shlibpath_var=SHLIB_PATH
  1826.   shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
  1827.   library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
  1828.   soname_spec='${libname}${release}.sl$major'
  1829.   # HP-UX runs *really* slowly unless shared libraries are mode 555.
  1830.   postinstall_cmds='chmod 555 $lib'
  1831.   ;;
  1832.  
  1833. irix5* | irix6*)
  1834.   version_type=irix
  1835.   need_lib_prefix=no
  1836.   need_version=no
  1837.   soname_spec='${libname}${release}.so.$major'
  1838.   library_names_spec='${libname}${release}.so.$versuffix ${libname}${release}.so.$major ${libname}${release}.so $libname.so'
  1839.   case "$host_os" in
  1840.   irix5*)
  1841.     libsuff= shlibsuff=
  1842.     # this will be overridden with pass_all, but let us keep it just in case
  1843.     deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1"
  1844.     ;;
  1845.   *)
  1846.     case "$LD" in # libtool.m4 will add one of these switches to LD
  1847.     *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;;
  1848.     *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;;
  1849.     *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
  1850.     *) libsuff= shlibsuff= libmagic=never-match;;
  1851.     esac
  1852.     # this will be overridden with pass_all, but let us keep it just in case
  1853.     deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1"
  1854.     ;;
  1855.   esac
  1856.   shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
  1857.   shlibpath_overrides_runpath=no
  1858.   sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
  1859.   sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
  1860.   file_magic_cmd=/usr/bin/file
  1861.   file_magic_test_file=`echo /lib${libsuff}/libc.so*`
  1862.   deplibs_check_method='pass_all'
  1863.   ;;
  1864.  
  1865. # No shared lib support for Linux oldld, aout, or coff.
  1866. linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
  1867.   dynamic_linker=no
  1868.   ;;
  1869.  
  1870. # This must be Linux ELF.
  1871. linux-gnu*)
  1872.   version_type=linux
  1873.   need_lib_prefix=no
  1874.   need_version=no
  1875.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  1876.   soname_spec='${libname}${release}.so$major'
  1877.   finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
  1878.   shlibpath_var=LD_LIBRARY_PATH
  1879.   shlibpath_overrides_runpath=no
  1880.   deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
  1881.   file_magic_cmd=/usr/bin/file
  1882.   file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
  1883.  
  1884.   if test -f /lib/ld.so.1; then
  1885.     dynamic_linker='GNU ld.so'
  1886.   else
  1887.     # Only the GNU ld.so supports shared libraries on MkLinux.
  1888.     case "$host_cpu" in
  1889.     powerpc*) dynamic_linker=no ;;
  1890.     *) dynamic_linker='Linux ld.so' ;;
  1891.     esac
  1892.   fi
  1893.   ;;
  1894.  
  1895. netbsd*)
  1896.   version_type=sunos
  1897.   if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
  1898.     library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
  1899.     finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
  1900.     dynamic_linker='NetBSD (a.out) ld.so'
  1901.   else
  1902.     library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
  1903.     soname_spec='${libname}${release}.so$major'
  1904.     dynamic_linker='NetBSD ld.elf_so'
  1905.   fi
  1906.   shlibpath_var=LD_LIBRARY_PATH
  1907.   ;;
  1908.  
  1909. openbsd*)
  1910.   version_type=sunos
  1911.   if test "$with_gnu_ld" = yes; then
  1912.     need_lib_prefix=no
  1913.     need_version=no
  1914.   fi
  1915.   library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
  1916.   finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
  1917.   shlibpath_var=LD_LIBRARY_PATH
  1918.   ;;
  1919.  
  1920. os2*)
  1921.   libname_spec='$name'
  1922.   need_lib_prefix=no
  1923.   library_names_spec='$libname.dll $libname.a'
  1924.   dynamic_linker='OS/2 ld.exe'
  1925.   shlibpath_var=LIBPATH
  1926.   ;;
  1927.  
  1928. osf3* | osf4*)
  1929.   version_type=osf
  1930.   need_version=no
  1931.   soname_spec='${libname}${release}.so'
  1932.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
  1933.   shlibpath_var=LD_LIBRARY_PATH
  1934.   # this will be overridden with pass_all, but let us keep it just in case
  1935.   deplibs_check_method='file_magic COFF format alpha shared library'
  1936.   file_magic_cmd=/usr/bin/file
  1937.   file_magic_test_file=/shlib/libc.so
  1938.   deplibs_check_method='pass_all'
  1939.   sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
  1940.   sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
  1941.   ;;
  1942.  
  1943. sco3.2v5*)
  1944.   version_type=osf
  1945.   soname_spec='${libname}${release}.so$major'
  1946.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  1947.   shlibpath_var=LD_LIBRARY_PATH
  1948.   ;;
  1949.  
  1950. solaris*)
  1951.   version_type=linux
  1952.   need_lib_prefix=no
  1953.   need_version=no
  1954.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  1955.   soname_spec='${libname}${release}.so$major'
  1956.   shlibpath_var=LD_LIBRARY_PATH
  1957.   shlibpath_overrides_runpath=yes
  1958.   # ldd complains unless libraries are executable
  1959.   postinstall_cmds='chmod +x $lib'
  1960.   deplibs_check_method="file_magic ELF [0-9][0-9]-bit [LM]SB dynamic lib"
  1961.   file_magic_cmd=/usr/bin/file
  1962.   file_magic_test_file=/lib/libc.so
  1963.   ;;
  1964.  
  1965. sunos4*)
  1966.   version_type=sunos
  1967.   library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
  1968.   finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
  1969.   shlibpath_var=LD_LIBRARY_PATH
  1970.   shlibpath_overrides_runpath=yes
  1971.   if test "$with_gnu_ld" = yes; then
  1972.     need_lib_prefix=no
  1973.   fi
  1974.   need_version=yes
  1975.   ;;
  1976.  
  1977. sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
  1978.   version_type=linux
  1979.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  1980.   soname_spec='${libname}${release}.so$major'
  1981.   shlibpath_var=LD_LIBRARY_PATH
  1982.   case "$host_vendor" in
  1983.     ncr)
  1984.       deplibs_check_method='pass_all'
  1985.       ;;
  1986.     motorola)
  1987.       need_lib_prefix=no
  1988.       need_version=no
  1989.       shlibpath_overrides_runpath=no
  1990.       sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
  1991.       deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
  1992.       file_magic_cmd=/usr/bin/file
  1993.       file_magic_test_file=`echo /usr/lib/libc.so*`
  1994.       ;;
  1995.   esac
  1996.   ;;
  1997.  
  1998. uts4*)
  1999.   version_type=linux
  2000.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2001.   soname_spec='${libname}${release}.so$major'
  2002.   shlibpath_var=LD_LIBRARY_PATH
  2003.   ;;
  2004.  
  2005. dgux*)
  2006.   version_type=linux
  2007.   need_lib_prefix=no
  2008.   need_version=no
  2009.   library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
  2010.   soname_spec='${libname}${release}.so$major'
  2011.   shlibpath_var=LD_LIBRARY_PATH
  2012.   ;;
  2013.  
  2014. sysv4*MP*)
  2015.   if test -d /usr/nec ;then
  2016.     version_type=linux
  2017.     library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
  2018.     soname_spec='$libname.so.$major'
  2019.     shlibpath_var=LD_LIBRARY_PATH
  2020.   fi
  2021.   ;;
  2022.  
  2023. *)
  2024.   dynamic_linker=no
  2025.   ;;
  2026. esac
  2027. echo "$ac_t$dynamic_linker" 1>&6
  2028. test "$dynamic_linker" = no && can_build_shared=no
  2029.  
  2030. # Report the final consequences.
  2031. echo "checking if libtool supports shared libraries... $can_build_shared" 1>&6
  2032.  
  2033. # Only try to build win32 dlls if AC_LIBTOOL_WIN32_DLL was used in
  2034. # configure.in, otherwise build static only libraries.
  2035. case "$host_os" in
  2036. cygwin* | mingw* | os2*)
  2037.   if test x$can_build_shared = xyes; then
  2038.     test x$enable_win32_dll = xno && can_build_shared=no
  2039.     echo "checking if package supports dlls... $can_build_shared" 1>&6
  2040.   fi
  2041. ;;
  2042. esac
  2043.  
  2044. if test -n "$file_magic_test_file" && test -n "$file_magic_cmd"; then
  2045.   case "$deplibs_check_method" in
  2046.   "file_magic "*)
  2047.     file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`"
  2048.     if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
  2049.        egrep "$file_magic_regex" > /dev/null; then
  2050.       :
  2051.     else
  2052.       cat <<EOF 1>&2
  2053.  
  2054. *** Warning: the command libtool uses to detect shared libraries,
  2055. *** $file_magic_cmd, produces output that libtool cannot recognize.
  2056. *** The result is that libtool may fail to recognize shared libraries
  2057. *** as such.  This will affect the creation of libtool libraries that
  2058. *** depend on shared libraries, but programs linked with such libtool
  2059. *** libraries will work regardless of this problem.  Nevertheless, you
  2060. *** may want to report the problem to your system manager and/or to
  2061. *** bug-libtool@gnu.org
  2062.  
  2063. EOF
  2064.     fi ;;
  2065.   esac
  2066. fi
  2067.  
  2068. echo $ac_n "checking whether to build shared libraries... $ac_c" 1>&6
  2069. test "$can_build_shared" = "no" && enable_shared=no
  2070.  
  2071. # On AIX, shared libraries and static libraries use the same namespace, and
  2072. # are all built from PIC.
  2073. case "$host_os" in
  2074. aix3*)
  2075.   test "$enable_shared" = yes && enable_static=no
  2076.   if test -n "$RANLIB"; then
  2077.     archive_cmds="$archive_cmds~\$RANLIB \$lib"
  2078.     postinstall_cmds='$RANLIB $lib'
  2079.   fi
  2080.   ;;
  2081.  
  2082. aix4*)
  2083.   test "$enable_shared" = yes && enable_static=no
  2084.   ;;
  2085. esac
  2086.  
  2087. echo "$ac_t$enable_shared" 1>&6
  2088.  
  2089. # Make sure either enable_shared or enable_static is yes.
  2090. test "$enable_shared" = yes || enable_static=yes
  2091.  
  2092. echo "checking whether to build static libraries... $enable_static" 1>&6
  2093.  
  2094. if test "$hardcode_action" = relink; then
  2095.   # Fast installation is not supported
  2096.   enable_fast_install=no
  2097. elif test "$shlibpath_overrides_runpath" = yes ||
  2098.      test "$enable_shared" = no; then
  2099.   # Fast installation is not necessary
  2100.   enable_fast_install=needless
  2101. fi
  2102.  
  2103. echo $ac_n "checking for objdir... $ac_c" 1>&6
  2104. rm -f .libs 2>/dev/null
  2105. mkdir .libs 2>/dev/null
  2106. if test -d .libs; then
  2107.   objdir=.libs
  2108. else
  2109.   # MS-DOS does not allow filenames that begin with a dot.
  2110.   objdir=_libs
  2111. fi
  2112. rmdir .libs 2>/dev/null
  2113. echo "$ac_t$objdir" 1>&6
  2114.  
  2115. if test "x$enable_dlopen" != xyes; then
  2116.   enable_dlopen=unknown
  2117.   enable_dlopen_self=unknown
  2118.   enable_dlopen_self_static=unknown
  2119. else
  2120. if eval "test \"`echo '$''{'lt_cv_dlopen'+set}'`\" != set"; then
  2121.   lt_cv_dlopen=no lt_cv_dlopen_libs=
  2122. echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
  2123. echo "$progname:2123: checking for dlopen in -ldl" >&5
  2124. ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
  2125. if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
  2126.   echo $ac_n "(cached) $ac_c" 1>&6
  2127. else
  2128.   ac_save_LIBS="$LIBS"
  2129. LIBS="-ldl  $LIBS"
  2130. cat > conftest.$ac_ext <<EOF
  2131. #line 2131 "ltconfig"
  2132. /* Override any gcc2 internal prototype to avoid an error.  */
  2133. /* We use char because int might match the return type of a gcc2
  2134.     builtin and then its argument prototype would still apply.  */
  2135. char dlopen();
  2136.  
  2137. int main() {
  2138. dlopen()
  2139. ; return 0; }
  2140. EOF
  2141. if { (eval echo $progname:2141: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
  2142.   rm -rf conftest*
  2143.   eval "ac_cv_lib_$ac_lib_var=yes"
  2144. else
  2145.   echo "$progname: failed program was:" >&5
  2146.   cat conftest.$ac_ext >&5
  2147.   rm -rf conftest*
  2148.   eval "ac_cv_lib_$ac_lib_var=no"
  2149. fi
  2150. rm -f conftest*
  2151. LIBS="$ac_save_LIBS"
  2152.  
  2153. fi
  2154. if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
  2155.   echo "$ac_t""yes" 1>&6
  2156.   lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
  2157. else
  2158.   echo "$ac_t""no" 1>&6
  2159. echo $ac_n "checking for dlopen""... $ac_c" 1>&6
  2160. echo "$progname:2160: checking for dlopen" >&5
  2161. if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then
  2162.   echo $ac_n "(cached) $ac_c" 1>&6
  2163. else
  2164.   cat > conftest.$ac_ext <<EOF
  2165. #line 2165 "ltconfig"
  2166. /* System header to define __stub macros and hopefully few prototypes,
  2167.     which can conflict with char dlopen(); below.  */
  2168. #include <assert.h>
  2169. /* Override any gcc2 internal prototype to avoid an error.  */
  2170. /* We use char because int might match the return type of a gcc2
  2171.     builtin and then its argument prototype would still apply.  */
  2172. char dlopen();
  2173.  
  2174. int main() {
  2175.  
  2176. /* The GNU C library defines this for functions which it implements
  2177.     to always fail with ENOSYS.  Some functions are actually named
  2178.     something starting with __ and the normal name is an alias.  */
  2179. #if defined (__stub_dlopen) || defined (__stub___dlopen)
  2180. choke me
  2181. #else
  2182. dlopen();
  2183. #endif
  2184.  
  2185. ; return 0; }
  2186. EOF
  2187. if { (eval echo $progname:2187: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
  2188.   rm -rf conftest*
  2189.   eval "ac_cv_func_dlopen=yes"
  2190. else
  2191.   echo "$progname: failed program was:" >&5
  2192.   cat conftest.$ac_ext >&5
  2193.   rm -rf conftest*
  2194.   eval "ac_cv_func_dlopen=no"
  2195. fi
  2196. rm -f conftest*
  2197. fi
  2198. if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then
  2199.   echo "$ac_t""yes" 1>&6
  2200.   lt_cv_dlopen="dlopen"
  2201. else
  2202.   echo "$ac_t""no" 1>&6
  2203. echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6
  2204. echo "$progname:2204: checking for dld_link in -ldld" >&5
  2205. ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'`
  2206. if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
  2207.   echo $ac_n "(cached) $ac_c" 1>&6
  2208. else
  2209.   ac_save_LIBS="$LIBS"
  2210. LIBS="-ldld  $LIBS"
  2211. cat > conftest.$ac_ext <<EOF
  2212. #line 2212 "ltconfig"
  2213. /* Override any gcc2 internal prototype to avoid an error.  */
  2214. /* We use char because int might match the return type of a gcc2
  2215.     builtin and then its argument prototype would still apply.  */
  2216. char dld_link();
  2217.  
  2218. int main() {
  2219. dld_link()
  2220. ; return 0; }
  2221. EOF
  2222. if { (eval echo $progname:2222: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
  2223.   rm -rf conftest*
  2224.   eval "ac_cv_lib_$ac_lib_var=yes"
  2225. else
  2226.   echo "$progname: failed program was:" >&5
  2227.   cat conftest.$ac_ext >&5
  2228.   rm -rf conftest*
  2229.   eval "ac_cv_lib_$ac_lib_var=no"
  2230. fi
  2231. rm -f conftest*
  2232. LIBS="$ac_save_LIBS"
  2233.  
  2234. fi
  2235. if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
  2236.   echo "$ac_t""yes" 1>&6
  2237.   lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
  2238. else
  2239.   echo "$ac_t""no" 1>&6
  2240. echo $ac_n "checking for shl_load""... $ac_c" 1>&6
  2241. echo "$progname:2241: checking for shl_load" >&5
  2242. if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then
  2243.   echo $ac_n "(cached) $ac_c" 1>&6
  2244. else
  2245.   cat > conftest.$ac_ext <<EOF
  2246. #line 2246 "ltconfig"
  2247. /* System header to define __stub macros and hopefully few prototypes,
  2248.     which can conflict with char shl_load(); below.  */
  2249. #include <assert.h>
  2250. /* Override any gcc2 internal prototype to avoid an error.  */
  2251. /* We use char because int might match the return type of a gcc2
  2252.     builtin and then its argument prototype would still apply.  */
  2253. char shl_load();
  2254.  
  2255. int main() {
  2256.  
  2257. /* The GNU C library defines this for functions which it implements
  2258.     to always fail with ENOSYS.  Some functions are actually named
  2259.     something starting with __ and the normal name is an alias.  */
  2260. #if defined (__stub_shl_load) || defined (__stub___shl_load)
  2261. choke me
  2262. #else
  2263. shl_load();
  2264. #endif
  2265.  
  2266. ; return 0; }
  2267. EOF
  2268. if { (eval echo $progname:2268: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
  2269.   rm -rf conftest*
  2270.   eval "ac_cv_func_shl_load=yes"
  2271. else
  2272.   echo "$progname: failed program was:" >&5
  2273.   cat conftest.$ac_ext >&5
  2274.   rm -rf conftest*
  2275.   eval "ac_cv_func_shl_load=no"
  2276. fi
  2277. rm -f conftest*
  2278. fi
  2279.  
  2280. if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then
  2281.   echo "$ac_t""yes" 1>&6
  2282.   lt_cv_dlopen="shl_load"
  2283. else
  2284.   echo "$ac_t""no" 1>&6
  2285. echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6
  2286. echo "$progname:2286: checking for shl_load in -ldld" >&5
  2287. ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'`
  2288. if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
  2289.   echo $ac_n "(cached) $ac_c" 1>&6
  2290. else
  2291.   ac_save_LIBS="$LIBS"
  2292. LIBS="-ldld  $LIBS"
  2293. cat > conftest.$ac_ext <<EOF
  2294. #line 2294 "ltconfig"
  2295. #include "confdefs.h"
  2296. /* Override any gcc2 internal prototype to avoid an error.  */
  2297. /* We use char because int might match the return type of a gcc2
  2298.     builtin and then its argument prototype would still apply.  */
  2299. char shl_load();
  2300.  
  2301. int main() {
  2302. shl_load()
  2303. ; return 0; }
  2304. EOF
  2305. if { (eval echo $progname:2305: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
  2306.   rm -rf conftest*
  2307.   eval "ac_cv_lib_$ac_lib_var=yes"
  2308. else
  2309.   echo "$progname: failed program was:" >&5
  2310.   cat conftest.$ac_ext >&5
  2311.   rm -rf conftest*
  2312.   eval "ac_cv_lib_$ac_lib_var=no"
  2313. fi
  2314. rm -f conftest*
  2315. LIBS="$ac_save_LIBS"
  2316.  
  2317. fi
  2318. if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
  2319.   echo "$ac_t""yes" 1>&6
  2320.   lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
  2321. else
  2322.   echo "$ac_t""no" 1>&6
  2323. fi
  2324.  
  2325.  
  2326. fi
  2327.  
  2328.     
  2329. fi
  2330.  
  2331.   
  2332. fi
  2333.  
  2334.  
  2335. fi
  2336.  
  2337. fi
  2338.  
  2339.   if test "x$lt_cv_dlopen" != xno; then
  2340.     enable_dlopen=yes
  2341.   fi
  2342.  
  2343.   case "$lt_cv_dlopen" in
  2344.   dlopen)
  2345. for ac_hdr in dlfcn.h; do
  2346. ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
  2347. echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
  2348. echo "$progname:2348: checking for $ac_hdr" >&5
  2349. if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
  2350.   echo $ac_n "(cached) $ac_c" 1>&6
  2351. else
  2352.   cat > conftest.$ac_ext <<EOF
  2353. #line 2353 "ltconfig"
  2354. #include <$ac_hdr>
  2355. int fnord = 0;
  2356. EOF
  2357. ac_try="$ac_compile conftest.$ac_ext >/dev/null 2>conftest.out"
  2358. { (eval echo $progname:2358: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
  2359. ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
  2360. if test -z "$ac_err"; then
  2361.   rm -rf conftest*
  2362.   eval "ac_cv_header_$ac_safe=yes"
  2363. else
  2364.   echo "$ac_err" >&5
  2365.   echo "$progname: failed program was:" >&5
  2366.   cat conftest.$ac_ext >&5
  2367.   rm -rf conftest*
  2368.   eval "ac_cv_header_$ac_safe=no"
  2369. fi
  2370. rm -f conftest*
  2371. fi
  2372. if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
  2373.   echo "$ac_t""yes" 1>&6
  2374. else
  2375.   echo "$ac_t""no" 1>&6
  2376. fi
  2377. done
  2378.  
  2379.     if test "x$ac_cv_header_dlfcn_h" = xyes; then
  2380.       CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
  2381.     fi
  2382.     eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
  2383.     LIBS="$lt_cv_dlopen_libs $LIBS"
  2384.  
  2385.   echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6
  2386. echo "$progname:2386: checking whether a program can dlopen itself" >&5
  2387. if test "${lt_cv_dlopen_self+set}" = set; then
  2388.   echo $ac_n "(cached) $ac_c" 1>&6
  2389. else
  2390.   if test "$cross_compiling" = yes; then
  2391.     lt_cv_dlopen_self=cross
  2392.   else
  2393.     cat > conftest.c <<EOF
  2394. #line 2394 "ltconfig"
  2395.  
  2396. #if HAVE_DLFCN_H
  2397. #include <dlfcn.h>
  2398. #endif
  2399.  
  2400. #include <stdio.h>
  2401.  
  2402. #ifdef RTLD_GLOBAL
  2403. # define LTDL_GLOBAL    RTLD_GLOBAL
  2404. #else
  2405. # ifdef DL_GLOBAL
  2406. #  define LTDL_GLOBAL    DL_GLOBAL
  2407. # else
  2408. #  define LTDL_GLOBAL    0
  2409. # endif
  2410. #endif
  2411.  
  2412. /* We may have to define LTDL_LAZY_OR_NOW in the command line if we
  2413.    find out it does not work in some platform. */
  2414. #ifndef LTDL_LAZY_OR_NOW
  2415. # ifdef RTLD_LAZY
  2416. #  define LTDL_LAZY_OR_NOW    RTLD_LAZY
  2417. # else
  2418. #  ifdef DL_LAZY
  2419. #   define LTDL_LAZY_OR_NOW    DL_LAZY
  2420. #  else
  2421. #   ifdef RTLD_NOW
  2422. #    define LTDL_LAZY_OR_NOW    RTLD_NOW
  2423. #   else
  2424. #    ifdef DL_NOW
  2425. #     define LTDL_LAZY_OR_NOW    DL_NOW
  2426. #    else
  2427. #     define LTDL_LAZY_OR_NOW    0
  2428. #    endif
  2429. #   endif
  2430. #  endif
  2431. # endif
  2432. #endif
  2433.  
  2434. fnord() { int i=42;}
  2435. main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
  2436.     if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
  2437.            if(ptr1 || ptr2) exit(0); } exit(1); } 
  2438.  
  2439. EOF
  2440. if { (eval echo $progname:2440: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
  2441. then
  2442.   lt_cv_dlopen_self=yes
  2443. else
  2444.   echo "$progname: failed program was:" >&5
  2445.   cat conftest.$ac_ext >&5
  2446.   rm -fr conftest*
  2447.   lt_cv_dlopen_self=no
  2448. fi
  2449. rm -fr conftest*
  2450. fi
  2451.  
  2452. fi
  2453.  
  2454. echo "$ac_t""$lt_cv_dlopen_self" 1>&6
  2455.  
  2456.   if test "$lt_cv_dlopen_self" = yes; then
  2457.     LDFLAGS="$LDFLAGS $link_static_flag"
  2458.   echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6
  2459. echo "$progname:2459: checking whether a statically linked program can dlopen itself" >&5
  2460. if test "${lt_cv_dlopen_self_static+set}" = set; then
  2461.   echo $ac_n "(cached) $ac_c" 1>&6
  2462. else
  2463.   if test "$cross_compiling" = yes; then
  2464.     lt_cv_dlopen_self_static=cross
  2465.   else
  2466.     cat > conftest.c <<EOF
  2467. #line 2467 "ltconfig"
  2468.  
  2469. #if HAVE_DLFCN_H
  2470. #include <dlfcn.h>
  2471. #endif
  2472.  
  2473. #include <stdio.h>
  2474.  
  2475. #ifdef RTLD_GLOBAL
  2476. # define LTDL_GLOBAL    RTLD_GLOBAL
  2477. #else
  2478. # ifdef DL_GLOBAL
  2479. #  define LTDL_GLOBAL    DL_GLOBAL
  2480. # else
  2481. #  define LTDL_GLOBAL    0
  2482. # endif
  2483. #endif
  2484.  
  2485. /* We may have to define LTDL_LAZY_OR_NOW in the command line if we
  2486.    find out it does not work in some platform. */
  2487. #ifndef LTDL_LAZY_OR_NOW
  2488. # ifdef RTLD_LAZY
  2489. #  define LTDL_LAZY_OR_NOW    RTLD_LAZY
  2490. # else
  2491. #  ifdef DL_LAZY
  2492. #   define LTDL_LAZY_OR_NOW    DL_LAZY
  2493. #  else
  2494. #   ifdef RTLD_NOW
  2495. #    define LTDL_LAZY_OR_NOW    RTLD_NOW
  2496. #   else
  2497. #    ifdef DL_NOW
  2498. #     define LTDL_LAZY_OR_NOW    DL_NOW
  2499. #    else
  2500. #     define LTDL_LAZY_OR_NOW    0
  2501. #    endif
  2502. #   endif
  2503. #  endif
  2504. # endif
  2505. #endif
  2506.  
  2507. fnord() { int i=42;}
  2508. main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
  2509.     if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
  2510.     if(ptr1 || ptr2) exit(0); } exit(1); } 
  2511.  
  2512. EOF
  2513. if { (eval echo $progname:2513: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
  2514. then
  2515.   lt_cv_dlopen_self_static=yes
  2516. else
  2517.   echo "$progname: failed program was:" >&5
  2518.   cat conftest.$ac_ext >&5
  2519.   rm -fr conftest*
  2520.   lt_cv_dlopen_self_static=no
  2521. fi
  2522. rm -fr conftest*
  2523. fi
  2524.  
  2525. fi
  2526.  
  2527. echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6
  2528. fi
  2529.     ;;
  2530.   esac
  2531.  
  2532.   case "$lt_cv_dlopen_self" in
  2533.   yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
  2534.   *) enable_dlopen_self=unknown ;;
  2535.   esac
  2536.  
  2537.   case "$lt_cv_dlopen_self_static" in
  2538.   yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
  2539.   *) enable_dlopen_self_static=unknown ;;
  2540.   esac
  2541. fi
  2542.  
  2543. # Copy echo and quote the copy, instead of the original, because it is
  2544. # used later.
  2545. ltecho="$echo"
  2546. if test "X$ltecho" = "X$CONFIG_SHELL $0 --fallback-echo"; then
  2547.    ltecho="$CONFIG_SHELL \$0 --fallback-echo"
  2548. fi
  2549. LTSHELL="$SHELL"
  2550.  
  2551. LTCONFIG_VERSION="$VERSION"
  2552.  
  2553. # Only quote variables if we're using ltmain.sh.
  2554. case "$ltmain" in
  2555. *.sh)
  2556.   # Now quote all the things that may contain metacharacters.
  2557.   for var in ltecho old_CC old_CFLAGS old_CPPFLAGS \
  2558.     old_LD old_LDFLAGS old_LIBS \
  2559.     old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS \
  2560.     AR CC LD LN_S NM LTSHELL LTCONFIG_VERSION \
  2561.     reload_flag reload_cmds wl \
  2562.     pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
  2563.     thread_safe_flag_spec whole_archive_flag_spec libname_spec \
  2564.     library_names_spec soname_spec \
  2565.     RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
  2566.     old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds postuninstall_cmds \
  2567.     file_magic_cmd export_symbols_cmds deplibs_check_method allow_undefined_flag no_undefined_flag \
  2568.     finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
  2569.     hardcode_libdir_flag_spec hardcode_libdir_separator  \
  2570.     sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
  2571.     compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do
  2572.  
  2573.     case "$var" in
  2574.     reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
  2575.     old_postinstall_cmds | old_postuninstall_cmds | \
  2576.     export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
  2577.     postinstall_cmds | postuninstall_cmds | \
  2578.     finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
  2579.       # Double-quote double-evaled strings.
  2580.       eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\""
  2581.       ;;
  2582.     *)
  2583.       eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\""
  2584.       ;;
  2585.     esac
  2586.   done
  2587.  
  2588.   case "$ltecho" in
  2589.   *'\$0 --fallback-echo"')
  2590.     ltecho=`$echo "X$ltecho" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'`
  2591.     ;;
  2592.   esac
  2593.  
  2594.   trap "$rm \"$ofile\"; exit 1" 1 2 15
  2595.   echo "creating $ofile"
  2596.   $rm "$ofile"
  2597.   cat <<EOF > "$ofile"
  2598. #! $SHELL
  2599.  
  2600. # `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
  2601. # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
  2602. # NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh.
  2603. #
  2604. # Copyright (C) 1996-1999 Free Software Foundation, Inc.
  2605. # Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
  2606. #
  2607. # This program is free software; you can redistribute it and/or modify
  2608. # it under the terms of the GNU General Public License as published by
  2609. # the Free Software Foundation; either version 2 of the License, or
  2610. # (at your option) any later version.
  2611. #
  2612. # This program is distributed in the hope that it will be useful, but
  2613. # WITHOUT ANY WARRANTY; without even the implied warranty of
  2614. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  2615. # General Public License for more details.
  2616. #
  2617. # You should have received a copy of the GNU General Public License
  2618. # along with this program; if not, write to the Free Software
  2619. # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  2620. #
  2621. # As a special exception to the GNU General Public License, if you
  2622. # distribute this file as part of a program that contains a
  2623. # configuration script generated by Autoconf, you may include it under
  2624. # the same distribution terms that you use for the rest of that program.
  2625.  
  2626. # Sed that helps us avoid accidentally triggering echo(1) options like -n.
  2627. Xsed="sed -e s/^X//"
  2628.  
  2629. # The HP-UX ksh and POSIX shell print the target directory to stdout
  2630. # if CDPATH is set.
  2631. if test "\${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi
  2632.  
  2633. ### BEGIN LIBTOOL CONFIG
  2634. EOF
  2635.   cfgfile="$ofile"
  2636.   ;;
  2637.  
  2638. *)
  2639.   # Double-quote the variables that need it (for aesthetics).
  2640.   for var in old_CC old_CFLAGS old_CPPFLAGS \
  2641.     old_LD old_LDFLAGS old_LIBS \
  2642.     old_NM old_RANLIB old_LN_S old_DLLTOOL old_OBJDUMP old_AS; do
  2643.     eval "$var=\\\"\$var\\\""
  2644.   done
  2645.  
  2646.   # Just create a config file.
  2647.   cfgfile="$ofile.cfg"
  2648.   trap "$rm \"$cfgfile\"; exit 1" 1 2 15
  2649.   echo "creating $cfgfile"
  2650.   $rm "$cfgfile"
  2651.   cat <<EOF > "$cfgfile"
  2652. # `$echo "$cfgfile" | sed 's%^.*/%%'` - Libtool configuration file.
  2653. # Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
  2654. EOF
  2655.   ;;
  2656. esac
  2657.  
  2658. cat <<EOF >> "$cfgfile"
  2659. # Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
  2660. #
  2661. # CC=$old_CC CFLAGS=$old_CFLAGS CPPFLAGS=$old_CPPFLAGS \\
  2662. # LD=$old_LD LDFLAGS=$old_LDFLAGS LIBS=$old_LIBS \\
  2663. # NM=$old_NM RANLIB=$old_RANLIB LN_S=$old_LN_S \\
  2664. # DLLTOOL=$old_DLLTOOL OBJDUMP=$old_OBJDUMP AS=$old_AS \\
  2665. #   $0$ltconfig_args
  2666. #
  2667. # Compiler and other test output produced by $progname, useful for
  2668. # debugging $progname, is in ./config.log if it exists.
  2669.  
  2670. # The version of $progname that generated this script.
  2671. LTCONFIG_VERSION=$LTCONFIG_VERSION
  2672.  
  2673. # Shell to use when invoking shell scripts.
  2674. SHELL=$LTSHELL
  2675.  
  2676. # Whether or not to build shared libraries.
  2677. build_libtool_libs=$enable_shared
  2678.  
  2679. # Whether or not to build static libraries.
  2680. build_old_libs=$enable_static
  2681.  
  2682. # Whether or not to optimize for fast installation.
  2683. fast_install=$enable_fast_install
  2684.  
  2685. # The host system.
  2686. host_alias=$host_alias
  2687. host=$host
  2688.  
  2689. # An echo program that does not interpret backslashes.
  2690. echo=$ltecho
  2691.  
  2692. # The archiver.
  2693. AR=$AR
  2694.  
  2695. # The default C compiler.
  2696. CC=$CC
  2697.  
  2698. # The linker used to build libraries.
  2699. LD=$LD
  2700.  
  2701. # Whether we need hard or soft links.
  2702. LN_S=$LN_S
  2703.  
  2704. # A BSD-compatible nm program.
  2705. NM=$NM
  2706.  
  2707. # Used on cygwin: DLL creation program.
  2708. DLLTOOL="$DLLTOOL"
  2709.  
  2710. # Used on cygwin: object dumper.
  2711. OBJDUMP="$OBJDUMP"
  2712.  
  2713. # Used on cygwin: assembler.
  2714. AS="$AS"
  2715.  
  2716. # The name of the directory that contains temporary libtool files.
  2717. objdir=$objdir
  2718.  
  2719. # How to create reloadable object files.
  2720. reload_flag=$reload_flag
  2721. reload_cmds=$reload_cmds
  2722.  
  2723. # How to pass a linker flag through the compiler.
  2724. wl=$wl
  2725.  
  2726. # Object file suffix (normally "o").
  2727. objext="$objext"
  2728.  
  2729. # Old archive suffix (normally "a").
  2730. libext="$libext"
  2731.  
  2732. # Additional compiler flags for building library objects.
  2733. pic_flag=$pic_flag
  2734.  
  2735. # Does compiler simultaneously support -c and -o options?
  2736. compiler_c_o=$compiler_c_o
  2737.  
  2738. # Can we write directly to a .lo ?
  2739. compiler_o_lo=$compiler_o_lo
  2740.  
  2741. # Must we lock files when doing compilation ?
  2742. need_locks=$need_locks
  2743.  
  2744. # Do we need the lib prefix for modules?
  2745. need_lib_prefix=$need_lib_prefix
  2746.  
  2747. # Do we need a version for libraries?
  2748. need_version=$need_version
  2749.  
  2750. # Whether dlopen is supported.
  2751. dlopen=$enable_dlopen
  2752.  
  2753. # Whether dlopen of programs is supported.
  2754. dlopen_self=$enable_dlopen_self
  2755.  
  2756. # Whether dlopen of statically linked programs is supported.
  2757. dlopen_self_static=$enable_dlopen_self_static
  2758.  
  2759. # Compiler flag to prevent dynamic linking.
  2760. link_static_flag=$link_static_flag
  2761.  
  2762. # Compiler flag to turn off builtin functions.
  2763. no_builtin_flag=$no_builtin_flag
  2764.  
  2765. # Compiler flag to allow reflexive dlopens.
  2766. export_dynamic_flag_spec=$export_dynamic_flag_spec
  2767.  
  2768. # Compiler flag to generate shared objects directly from archives.
  2769. whole_archive_flag_spec=$whole_archive_flag_spec
  2770.  
  2771. # Compiler flag to generate thread-safe objects.
  2772. thread_safe_flag_spec=$thread_safe_flag_spec
  2773.  
  2774. # Library versioning type.
  2775. version_type=$version_type
  2776.  
  2777. # Format of library name prefix.
  2778. libname_spec=$libname_spec
  2779.  
  2780. # List of archive names.  First name is the real one, the rest are links.
  2781. # The last name is the one that the linker finds with -lNAME.
  2782. library_names_spec=$library_names_spec
  2783.  
  2784. # The coded name of the library, if different from the real name.
  2785. soname_spec=$soname_spec
  2786.  
  2787. # Commands used to build and install an old-style archive.
  2788. RANLIB=$RANLIB
  2789. old_archive_cmds=$old_archive_cmds
  2790. old_postinstall_cmds=$old_postinstall_cmds
  2791. old_postuninstall_cmds=$old_postuninstall_cmds
  2792.  
  2793. # Create an old-style archive from a shared archive.
  2794. old_archive_from_new_cmds=$old_archive_from_new_cmds
  2795.  
  2796. # Commands used to build and install a shared archive.
  2797. archive_cmds=$archive_cmds
  2798. archive_expsym_cmds=$archive_expsym_cmds
  2799. postinstall_cmds=$postinstall_cmds
  2800. postuninstall_cmds=$postuninstall_cmds
  2801.  
  2802. # Method to check whether dependent libraries are shared objects.
  2803. deplibs_check_method=$deplibs_check_method
  2804.  
  2805. # Command to use when deplibs_check_method == file_magic.
  2806. file_magic_cmd=$file_magic_cmd
  2807.  
  2808. # Flag that allows shared libraries with undefined symbols to be built.
  2809. allow_undefined_flag=$allow_undefined_flag
  2810.  
  2811. # Flag that forces no undefined symbols.
  2812. no_undefined_flag=$no_undefined_flag
  2813.  
  2814. # Commands used to finish a libtool library installation in a directory.
  2815. finish_cmds=$finish_cmds
  2816.  
  2817. # Same as above, but a single script fragment to be evaled but not shown.
  2818. finish_eval=$finish_eval
  2819.  
  2820. # Take the output of nm and produce a listing of raw symbols and C names.
  2821. global_symbol_pipe=$global_symbol_pipe
  2822.  
  2823. # Transform the output of nm in a proper C declaration
  2824. global_symbol_to_cdecl=$global_symbol_to_cdecl
  2825.  
  2826. # This is the shared library runtime path variable.
  2827. runpath_var=$runpath_var
  2828.  
  2829. # This is the shared library path variable.
  2830. shlibpath_var=$shlibpath_var
  2831.  
  2832. # Is shlibpath searched before the hard-coded library search path?
  2833. shlibpath_overrides_runpath=$shlibpath_overrides_runpath
  2834.  
  2835. # How to hardcode a shared library path into an executable.
  2836. hardcode_action=$hardcode_action
  2837.  
  2838. # Flag to hardcode \$libdir into a binary during linking.
  2839. # This must work even if \$libdir does not exist.
  2840. hardcode_libdir_flag_spec=$hardcode_libdir_flag_spec
  2841.  
  2842. # Whether we need a single -rpath flag with a separated argument.
  2843. hardcode_libdir_separator=$hardcode_libdir_separator
  2844.  
  2845. # Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
  2846. # resulting binary.
  2847. hardcode_direct=$hardcode_direct
  2848.  
  2849. # Set to yes if using the -LDIR flag during linking hardcodes DIR into the
  2850. # resulting binary.
  2851. hardcode_minus_L=$hardcode_minus_L
  2852.  
  2853. # Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
  2854. # the resulting binary.
  2855. hardcode_shlibpath_var=$hardcode_shlibpath_var
  2856.  
  2857. # Compile-time system search path for libraries
  2858. sys_lib_search_path_spec=$sys_lib_search_path_spec
  2859.  
  2860. # Run-time system search path for libraries
  2861. sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec
  2862.  
  2863. # Fix the shell variable \$srcfile for the compiler.
  2864. fix_srcfile_path="$fix_srcfile_path"
  2865.  
  2866. # Set to yes if exported symbols are required.
  2867. always_export_symbols=$always_export_symbols
  2868.  
  2869. # The commands to list exported symbols.
  2870. export_symbols_cmds=$export_symbols_cmds
  2871.  
  2872. # Symbols that should not be listed in the preloaded symbols.
  2873. exclude_expsyms=$exclude_expsyms
  2874.  
  2875. # Symbols that must always be exported.
  2876. include_expsyms=$include_expsyms
  2877.  
  2878. EOF
  2879.  
  2880. case "$ltmain" in
  2881. *.sh)
  2882.   echo '### END LIBTOOL CONFIG' >> "$ofile"
  2883.   echo >> "$ofile"
  2884.   case "$host_os" in
  2885.   aix3*)
  2886.     cat <<\EOF >> "$ofile"
  2887.  
  2888. # AIX sometimes has problems with the GCC collect2 program.  For some
  2889. # reason, if we set the COLLECT_NAMES environment variable, the problems
  2890. # vanish in a puff of smoke.
  2891. if test "${COLLECT_NAMES+set}" != set; then
  2892.   COLLECT_NAMES=
  2893.   export COLLECT_NAMES
  2894. fi
  2895. EOF
  2896.     ;;
  2897.   esac
  2898.  
  2899.   # Append the ltmain.sh script.
  2900.   cat "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1)
  2901.  
  2902.   chmod +x "$ofile"
  2903.   ;;
  2904.  
  2905. *)
  2906.   # Compile the libtool program.
  2907.   echo "FIXME: would compile $ltmain"
  2908.   ;;
  2909. esac
  2910.  
  2911. test -n "$cache_file" || exit 0
  2912.  
  2913. # AC_CACHE_SAVE
  2914. trap '' 1 2 15
  2915. cat > confcache <<\EOF
  2916. # This file is a shell script that caches the results of configure
  2917. # tests run on this system so they can be shared between configure
  2918. # scripts and configure runs.  It is not useful on other systems.
  2919. # If it contains results you don't want to keep, you may remove or edit it.
  2920. #
  2921. # By default, configure uses ./config.cache as the cache file,
  2922. # creating it if it does not exist already.  You can give configure
  2923. # the --cache-file=FILE option to use a different cache file; that is
  2924. # what configure does when it calls configure scripts in
  2925. # subdirectories, so they share the cache.
  2926. # Giving --cache-file=/dev/null disables caching, for debugging configure.
  2927. # config.status only pays attention to the cache file if you give it the
  2928. # --recheck option to rerun configure.
  2929. #
  2930. EOF
  2931. # The following way of writing the cache mishandles newlines in values,
  2932. # but we know of no workaround that is simple, portable, and efficient.
  2933. # So, don't put newlines in cache variables' values.
  2934. # Ultrix sh set writes to stderr and can't be redirected directly,
  2935. # and sets the high bit in the cache file unless we assign to the vars.
  2936. (set) 2>&1 |
  2937.   case `(ac_space=' '; set | grep ac_space) 2>&1` in
  2938.   *ac_space=\ *)
  2939.     # `set' does not quote correctly, so add quotes (double-quote substitution
  2940.     # turns \\\\ into \\, and sed turns \\ into \).
  2941.     sed -n \
  2942.       -e "s/'/'\\\\''/g" \
  2943.       -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
  2944.     ;;
  2945.   *)
  2946.     # `set' quotes correctly as required by POSIX, so do not add quotes.
  2947.     sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
  2948.     ;;
  2949.   esac >> confcache
  2950. if cmp -s $cache_file confcache; then
  2951.   :
  2952. else
  2953.   if test -w $cache_file; then
  2954.     echo "updating cache $cache_file"
  2955.     cat confcache > $cache_file
  2956.   else
  2957.     echo "not updating unwritable cache $cache_file"
  2958.   fi
  2959. fi
  2960. rm -f confcache
  2961.  
  2962. exit 0
  2963.  
  2964. # Local Variables:
  2965. # mode:shell-script
  2966. # sh-indentation:2
  2967. # End:
  2968.